<?php
	require_once $_SERVER['DOCUMENT_ROOT'] . '/spa/xajax/xajax_core/xajax.inc.php';
	
	$xajax = new xajax();
	
	$numeroFactura = $HTTP_GET_VARS['numeroFactura'];
	$rif = $HTTP_GET_VARS['rif'];
	
	function buscarNombreLocal($rif) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$query = "SELECT NOMBRE_LOCAL
				  FROM LOCAL
				  WHERE PK_RIF_LOCAL = '$rif'";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCILogOff($conexion);
		
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		if ($rows > 0)
			$nombreLocal = $resultado['NOMBRE_LOCAL'][0];
			
		return $nombreLocal;
	}
	
	function buscarNombreCliente($ci) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$query = "SELECT NOMBRE || ' ' || APELLIDO CLIENTE
				  FROM CLIENTE
				  WHERE PK_CI = $ci";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCILogOff($conexion);
		
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		if ($rows > 0)
			$nombreCliente = $resultado['CLIENTE'][0];
			
		return $nombreCliente;
	}
	
	function cargarServiciosDisponibles($rif, $servicios) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$serv = '';
		for ($i = 0; $i < count($servicios); $i++)
			if ($i < count($servicios)-1)
				$serv .= '\'' . $servicios[$i] . '\', ';
				
		$serv .= '\'' . $servicios[count($servicios)-1] . '\'';
		
		$query = "SELECT DISTINCT s.*, m.NOMBRE_MODELO
				  FROM DISPONIBILIDAD d, HIST_INSTALACIONES hi, SERVICIO s, MODELO m
				  WHERE d.PK_FK_RIF_LOCAL = '$rif'
				  AND d.STATUS = 'DISPONIBLE'
				  AND s.NOMBRE_SERVICIO NOT IN ($serv)
				  AND d.PK_FK_ID_SERVICIO_HISTORIAL = hi.PK_FK_ID_SERVICIO
				  AND hi.PK_FK_ID_SERVICIO = s.PK_ID_SERVICIO
				  AND hi.PK_FK_ID_MODELO = m.PK_ID_MODELO
				  AND d.FECHA = (SELECT MAX(FECHA) FECHA
               					 FROM DISPONIBILIDAD
               					 WHERE PK_FK_ID_SERVICIO_HISTORIAL = s.PK_ID_SERVICIO
               					 AND PK_FK_ID_MODELO_HISTORIAL = m.PK_ID_MODELO)
				  ORDER BY s.PK_ID_SERVICIO";
					  
		$sentencia = OCIParse($conexion, $query);
			
		OCIExecute($sentencia);
			
		OCILogOff($conexion);
			
		$rows = OCIFetchstatement($sentencia, $resultado);
			
		$selectServicio = '<select name="idServicio"><option value="Seleccione">Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>';
		
		if ($rows > 0)
			for ($i = 0; $i < $rows; $i++)
				$selectServicio .= '<option value="' . $resultado['NOMBRE_SERVICIO'][$i] . '">' . $resultado['NOMBRE_SERVICIO'][$i] . '</option>';
					
		$selectServicio .= '</select>';
			
		return $selectServicio;
	}
	
	function cargarProductosDisponibles($rif, $productos) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$prod = '';
		for ($i = 0; $i < count($productos); $i++)
			if ($i < count($productos)-1)
				$prod .= '\'' . $productos[$i] . '\', ';
				
		$prod .= '\'' . $productos[count($productos)-1] . '\'';
		
		$query = "SELECT p.NOMBRE
				  FROM INVENTARIO i, PRODUCTO p
				  WHERE i.PK_FK_RIF_LOCAL = '$rif'
				  AND i.PK_FK_ID_PROD = p.PK_ID_PRODUCTO
				  AND p.NOMBRE NOT IN ($prod)
				  ORDER BY p.PK_ID_PRODUCTO DESC";
				  
		$sentencia = OCIParse($conexion, $query);
			
		OCIExecute($sentencia);
			
		OCILogOff($conexion);
			
		$rows = OCIFetchstatement($sentencia, $resultado);
			
		$selectProducto = '<select name="idProducto"><option value="Seleccione">Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>';
			
		if ($rows > 0)
			for ($i = 0; $i < $rows; $i++)
				$selectProducto .= '<option value="' . $resultado['NOMBRE'][$i] . '">' . $resultado['NOMBRE'][$i] . '</option>';
				
		$selectProducto .= '</select>';
					
		return $selectProducto;
	}
	
	function buscarProductoEnInventario($productosInventario, $producto) {
		for ($i = 0; $i < count($productosInventario); $i++)
			if ($producto == $productosInventario[$i])
				return 'true';
				
		return 'false';
	}
	
	function cargarCombosDisponibles($rif, $combos) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$comb = '';
		for ($i = 0; $i < count($combos); $i++)
			if ($i < count($combos)-1)
				$comb .= '\'' . $combos[$i] . '\', ';
				
		$comb .= '\'' . $combos[count($combos)-1] . '\'';
		
		/**
		 * Seleccionando los productos en el inventario del local
		 */
		$query = "SELECT p.PK_ID_PRODUCTO
				  FROM INVENTARIO i, PRODUCTO p
				  WHERE i.PK_FK_RIF_LOCAL = '$rif'
				  AND i.PK_FK_ID_PROD = p.PK_ID_PRODUCTO";
					  
		$sentencia = OCIParse($conexion, $query);
			
		OCIExecute($sentencia);
		
		$combos[0] = 0;
		
		$selectCombo = '<select name="idCombo"><option value="Seleccione">Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>';
			
		$inv = OCIFetchstatement($sentencia, $resultado);
		
		if ($inv > 0) {
			for ($i = 0; $i < $inv; $i++)
				$productosInventario[$i] = $resultado['PK_ID_PRODUCTO'][$i];
			
			/**
			 * Seleccionando todos los combos registrados
			 */
			$query = "SELECT PK_ID_COMBO
			          FROM COMBO
					  WHERE NOMBRE NOT IN ($comb)";
			
			$sentencia = OCIParse($conexion, $query);
			
			OCIExecute($sentencia);
			
			$com = OCIFetchstatement($sentencia, $result);
			
			if ($com > 0) {
				$l = 0;
				
				for ($j = 0; $j < $com; $j++) {
					$idCombo = $result['PK_ID_COMBO'][$j];
					
					/**
					 * Seleccionando los productos de cada combo para verificar si todos se encuentran en el inventario del local
					 */
					$query = "SELECT pc.PK_FK_ID_PRODUCTO, c.NOMBRE
					          FROM COMBO c, PRO_COM pc
							  WHERE c.PK_ID_COMBO = $idCombo
							  AND c.PK_ID_COMBO = pc.PK_FK_ID_COMBO";
							  
					$sentencia = OCIParse($conexion, $query);
			
					OCIExecute($sentencia);
					
					$prod = OCIFetchstatement($sentencia, $res);
					
					if ($prod > 0) {
						for ($k = 0; $k < $prod; $k++) {
							/**
							 * Si el producto no se encuentra en el inventario del local finaliza el ciclo y pasa a verificar los 
							 * productos del siguiente combo
							 */
							if (buscarProductoEnInventario($productosInventario, $res['PK_FK_ID_PRODUCTO'][$k]) == 'false')
								break;
						
						}
						/**
						 * Si k es igual a la cantidad de productos que contiene el combo, entonces todos los productos del combo se
						 * encuentran en el inventario del local y se almacena el nombre de dicho combo en la lista desplegable
						 */
						if ($k == $prod)
							$selectCombo .= '<option value="' . $res['NOMBRE'][0] . '">' . $res['NOMBRE'][0] . '</option>';
					}
				}
			}
		}
		
		OCILogOff($conexion);				
				
		$selectCombo .= '</select>';
					
		return $selectCombo;
	}
	
	function cargarHabitacionesOcupadas($rif, $ci) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$query = "SELECT PK_NRO_HAB, PK_NRO_HAB || ' - ' || TIPO_HAB HABITACION
		          FROM HABITACION
				  WHERE PK_FK_RIF_LOCAL = '$rif'
				  AND FK_CI_CLIENTE = $ci
				  AND STATUS_HAB = 'OCUPADA'";
					  
		$sentencia = OCIParse($conexion, $query);
			
		OCIExecute($sentencia);
			
		OCILogOff($conexion);
			
		$rows = OCIFetchstatement($sentencia, $resultado);
			
		$selectHabitacion = '<select name="idHabitacion"><option value="Seleccione">Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>';
		
		if ($rows > 0)
			for ($i = 0; $i < $rows; $i++)
				$selectHabitacion .= '<option value="' . $resultado['PK_NRO_HAB'][$i] . '">' . $resultado['HABITACION'][$i] . '</option>';
					
		$selectHabitacion .= '</select>';
			
		return $selectHabitacion;
	}
	
	function cargarHabitacionesOcupadasDisponibles($rif, $ci, $habitaciones) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$hab = '';
		for ($i = 0; $i < count($habitaciones); $i++)
			if ($i < count($habitaciones)-1)
				$hab .= '\'' . $habitaciones[$i] . '\', ';
				
		$hab .= '\'' . $habitaciones[count($habitaciones)-1] . '\'';
		
		$query = "SELECT PK_NRO_HAB, PK_NRO_HAB || ' - ' || TIPO_HAB HABITACION
		          FROM HABITACION
				  WHERE PK_FK_RIF_LOCAL = '$rif'
				  AND FK_CI_CLIENTE = $ci
				  AND STATUS_HAB = 'OCUPADA'
				  AND PK_NRO_HAB NOT IN ($hab)";
					  
		$sentencia = OCIParse($conexion, $query);
			
		OCIExecute($sentencia);
			
		OCILogOff($conexion);
			
		$rows = OCIFetchstatement($sentencia, $resultado);
			
		$selectHabitacion = '<select name="idHabitacion"><option value="Seleccione">Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>';
		
		if ($rows > 0)
			for ($i = 0; $i < $rows; $i++)
				$selectHabitacion .= '<option value="' . $resultado['PK_NRO_HAB'][$i] . '">' . $resultado['HABITACION'][$i] . '</option>';
					
		$selectHabitacion .= '</select>';
			
		return $selectHabitacion;
	}
	
	function llenar_area_servicios($servicio, $cantidad, $servicios, $totalFactura, $totalServicios, $iva, $esEmpleado) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$query = "SELECT COSTO_SERVICIO
				  FROM SERVICIO
				  WHERE NOMBRE_SERVICIO = '$servicio'";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		$costo = "\n";
		if ($rows > 0) {
			if ($esEmpleado == 'false')
				$costo = str_replace(",", ".", $resultado['COSTO_SERVICIO'][0]) * $cantidad;
			else
				$costo = str_replace(",", ".", $resultado['COSTO_SERVICIO'][0]) * 0.85 * $cantidad;
				
			$totalFactura += round($costo, 2);
			$totalServicios += round($costo, 2);
			$costo .= " \$US;\n";
		}
			
		$servicio = '&raquo; ' . $servicio;
		
		if ($cantidad == 1)
			$cantidad .= ' servicio';
		
		else
			$cantidad .= ' servicios';
			
		$areaServicios = '<fieldset>';
		$areaServicios .= '<legend><font color="#FFFFFF" size="+1">Servicios</font></legend>';
		$areaServicios .= '<textarea name="servicios" rows="4" cols="70" readonly="readonly">';
		$areaServicios .= $servicios . $servicio . ' - ' . $cantidad . ' - ' . $costo;
		$areaServicios .= '</textarea>';
		$areaServicios .= '</fieldset>';
		
		$iva = round($totalFactura * ($iva/100), 2);
		$total = round($totalFactura + $iva, 2);
		
		$totalFactura = '<input name="totalFactura" type="text" value="' . $totalFactura . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$totalServicios = '<input name="totalServicios" type="text" value="' . $totalServicios . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$iva = '<input name="iva" type="text" value="' . $iva . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$total = '<input name="total" type="text" value="' . $total . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("areaServicios", "innerHTML", $areaServicios);
		$respuesta -> assign("totalFactura", "innerHTML", $totalFactura);
		$respuesta -> assign("totalServicios", "innerHTML", $totalServicios);
		$respuesta -> assign("iva", "innerHTML", $iva);
		$respuesta -> assign("total", "innerHTML", $total);
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("llenar_area_servicios");
	
	function actualizarInventario($conexion, $rif, $producto, $cantidad, $operacion) {		
		if ($operacion == 'insercion')
			$query = "UPDATE INVENTARIO SET
			              CANTIDAD = CANTIDAD + $cantidad
					  WHERE PK_FK_RIF_LOCAL = '$rif'
					  AND PK_FK_ID_PROD = (SELECT PK_ID_PRODUCTO
										   FROM PRODUCTO
										   WHERE NOMBRE = '$producto')";
					  
		else
			$query = "UPDATE INVENTARIO SET
			              CANTIDAD = CANTIDAD - $cantidad
					  WHERE PK_FK_RIF_LOCAL = '$rif'
					  AND PK_FK_ID_PROD = (SELECT PK_ID_PRODUCTO
										   FROM PRODUCTO
										   WHERE NOMBRE = '$producto')";
					  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCICommit($conexion);
	}
	
	function llenar_area_productos($rif, $producto, $cantidad, $productos, $totalFactura, $totalProductos, $iva, $esEmpleado) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$query = "SELECT COSTO_UNITARIO
				  FROM PRODUCTO
				  WHERE NOMBRE = '$producto'";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		$costo = "\n";
		if ($rows > 0) {
			if ($esEmpleado == 'false')
				$costo = str_replace(",", ".", $resultado['COSTO_UNITARIO'][0]) * $cantidad;
			else
				$costo = str_replace(",", ".", $resultado['COSTO_UNITARIO'][0]) * 0.9 * $cantidad;
				
			$totalFactura += round($costo, 2);
			$totalProductos += round($costo, 2);
			$costo .= " \$US;\n";
		}
		
		actualizarInventario($conexion, $rif, $producto, $cantidad, 'retiro');
			
		$producto = '&raquo; ' . $producto;
		
		if ($cantidad == 1)
			$cantidad .= ' unidad';
		
		else
			$cantidad .= ' unidades';
			
		$areaProductos = '<fieldset>';
		$areaProductos .= '<legend><font color="#FFFFFF" size="+1">Productos</font></legend>';
		$areaProductos .= '<textarea name="productos" rows="4" cols="70" readonly="readonly">';
		$areaProductos .= $productos . $producto . ' - ' . $cantidad . ' - ' . $costo;
		$areaProductos .= '</textarea>';
		$areaProductos .= '</fieldset>';
		
		$iva = round($totalFactura * ($iva/100), 2);
		$total = round($totalFactura + $iva, 2);
		
		$totalFactura = '<input name="totalFactura" type="text" value="' . $totalFactura . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$totalProductos = '<input name="totalProductos" type="text" value="' . $totalProductos . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$iva = '<input name="iva" type="text" value="' . $iva . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$total = '<input name="total" type="text" value="' . $total . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("areaProductos", "innerHTML", $areaProductos);
		$respuesta -> assign("totalFactura", "innerHTML", $totalFactura);
		$respuesta -> assign("totalProductos", "innerHTML", $totalProductos);
		$respuesta -> assign("iva", "innerHTML", $iva);
		$respuesta -> assign("total", "innerHTML", $total);
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("llenar_area_productos");
	
	function llenar_area_combos($rif, $combo, $cantidad, $combos, $totalFactura, $totalCombos, $iva) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$query = "SELECT ROUND(SUM(p.COSTO_UNITARIO*pc.CANTIDAD*(1-c.TASA_DESCUENTO/100)), 2) MONTO_COMBO
				  FROM COMBO c, PRO_COM pc, PRODUCTO p
				  WHERE c.NOMBRE = '$combo'
				  AND c.PK_ID_COMBO = pc.PK_FK_ID_COMBO
				  AND pc.PK_FK_ID_PRODUCTO = p.PK_ID_PRODUCTO
				  GROUP BY c.PK_ID_COMBO";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		$costo = "\n";
		if ($rows > 0) {
			$costo = str_replace(",", ".", $resultado['MONTO_COMBO'][0]) * $cantidad;
			$totalFactura += round($costo, 2);
			$totalCombos += round($costo, 2);
			$costo .= " \$US;\n";
		}
		
		$query = "SELECT p.NOMBRE, pc.CANTIDAD
		          FROM COMBO c, PRO_COM pc, PRODUCTO p
				  WHERE c.NOMBRE = '$combo'
				  AND c.PK_ID_COMBO = pc.PK_FK_ID_COMBO
				  AND pc.PK_FK_ID_PRODUCTO = p.PK_ID_PRODUCTO";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		if ($rows > 0)
			for ($i = 0; $i < $rows; $i++) {
				$producto = $resultado['NOMBRE'][$i];
				$cantidadProducto = $cantidad * $resultado['CANTIDAD'][$i];
				
				actualizarInventario($conexion, $rif, $producto, $cantidadProducto, 'retiro');				
			}
			
		$combo = '&raquo; ' . $combo;
		
		if ($cantidad == 1)
			$cantidad .= ' unidad';
		
		else
			$cantidad .= ' unidades';
		
		$areaCombos = '<fieldset>';
		$areaCombos .= '<legend><font color="#FFFFFF" size="+1">Combos</font></legend>';
		$areaCombos .= '<textarea name="combos" rows="4" cols="70" readonly="readonly">';
		$areaCombos .= $combos . $combo . ' - ' . $cantidad . ' - ' . $costo;
		$areaCombos .= '</textarea>';
		$areaCombos .= '</fieldset>';
		
		$iva = round($totalFactura * ($iva/100), 2);
		$total = round($totalFactura + $iva, 2);
		
		$totalFactura = '<input name="totalFactura" type="text" value="' . $totalFactura . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$totalCombos = '<input name="totalCombos" type="text" value="' . $totalCombos . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$iva = '<input name="iva" type="text" value="' . $iva . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$total = '<input name="total" type="text" value="' . $total . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("areaCombos", "innerHTML", $areaCombos);
		$respuesta -> assign("totalFactura", "innerHTML", $totalFactura);
		$respuesta -> assign("totalCombos", "innerHTML", $totalCombos);
		$respuesta -> assign("iva", "innerHTML", $iva);
		$respuesta -> assign("total", "innerHTML", $total);
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("llenar_area_combos");
	
	function llenar_area_habitaciones($habitacion, $cantidad, $habitaciones, $totalFactura, $totalHabitaciones, $iva) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$query = "SELECT COSTO_HAB
				  FROM HABITACION
				  WHERE PK_NRO_HAB = $habitacion";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		$costo = "\n";
		if ($rows > 0) {
			$costo = str_replace(",", ".", $resultado['COSTO_HAB'][0]) * $cantidad;				
			$totalFactura += round($costo, 2);
			$totalHabitaciones += round($costo, 2);
			$costo .= " \$US;\n";
		}
			
		$habitacion = '&raquo; Habitación ' . $habitacion;
		
		if ($cantidad == 1)
			$cantidad .= ' noche';
		
		else
			$cantidad .= ' noches';
			
		$areaHabitaciones = '<fieldset>';
		$areaHabitaciones .= '<legend><font color="#FFFFFF" size="+1">Habitaciones</font></legend>';
		$areaHabitaciones .= '<textarea name="habitaciones" rows="4" cols="70" readonly="readonly">';
		$areaHabitaciones .= $habitaciones . $habitacion . ' - ' . $cantidad . ' - ' . $costo;
		$areaHabitaciones .= '</textarea>';
		$areaHabitaciones .= '</fieldset>';
		
		$iva = round($totalFactura * ($iva/100), 2);
		$total = round($totalFactura + $iva, 2);
		
		$totalFactura = '<input name="totalFactura" type="text" value="' . $totalFactura . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$totalHabitaciones = '<input name="totalHabitaciones" type="text" value="' . $totalHabitaciones . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$iva = '<input name="iva" type="text" value="' . $iva . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$total = '<input name="total" type="text" value="' . $total . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("areaHabitaciones", "innerHTML", $areaHabitaciones);
		$respuesta -> assign("totalFactura", "innerHTML", $totalFactura);
		$respuesta -> assign("totalHabitaciones", "innerHTML", $totalHabitaciones);
		$respuesta -> assign("iva", "innerHTML", $iva);
		$respuesta -> assign("total", "innerHTML", $total);
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("llenar_area_habitaciones");
	
	function buscar_servicios_reservados($servicios, $idReservacion, $totalFactura, $totalServicios, $iva, $rif) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$query = "SELECT s.NOMBRE_SERVICIO, d.CANTIDAD_SERVICIOS, h.PK_NRO_HAB, d.CANTIDAD_HABITACIONES,
						 r.COSTO_TOTAL_RESERV MONTO_RESERVACION
				  FROM RESERVACION r, DETALLE_RESERVACION d, SERVICIO s, HABITACION h
				  WHERE r.PK_ID_RESERVACION = $idReservacion
                  AND r.PK_ID_RESERVACION = d.PK_FK_ID_RESERVACION
				  AND d.FK_ID_SERVICIO = s.PK_ID_SERVICIO (+)
				  AND d.FK_NRO_HAB = h.PK_NRO_HAB (+)";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		$areaServicios = '<fieldset>';
		$areaServicios .= '<legend><font color="#FFFFFF" size="+1">Servicios</font></legend>';
		$areaServicios .= '<textarea name="servicios" rows="4" cols="70" readonly="readonly">' . $servicios;
		
		if ($rows > 0)
			for ($i = 0; $i < $rows; $i++) {
				if ($resultado['NOMBRE_SERVICIO'][$i] != '') {
					$areaServicios .= '* ' . $resultado['NOMBRE_SERVICIO'][$i] . ' - ' . $resultado['CANTIDAD_SERVICIOS'][$i];
				
					if ($resultado['CANTIDAD_DETALLE'][$i] == 1)
						$areaServicios .= " servicio;\n";
					
					else
						$areaServicios .= " servicios;\n";
				}
				
				if ($resultado['PK_NRO_HAB'][$i] != '') {
					$areaServicios .= '* Habitación ' . $resultado['PK_NRO_HAB'][$i] . ' - ' . 
						$resultado['CANTIDAD_HABITACIONES'][$i];
				
					if ($resultado['CANTIDAD_HABITACIONES'][$i] == 1)
						$areaServicios .= " noche;\n";
					
					else
						$areaServicios .= " noches;\n";
				}
			}
			
		$montoReservacion = $resultado['MONTO_RESERVACION'][0];
		
		$totalFactura += round($montoReservacion, 2);
		$totalServicios += round($montoReservacion, 2);
			
		$areaServicios .= "------------------------------------------------------------;\n";
		$areaServicios .= '&raquo; Reservacion - ' . $idReservacion . ' -> Monto total - ' . $montoReservacion . " \$US;\n";
		$areaServicios .= "____________________________________________________________;\n";
		
		$areaServicios .= '</textarea>';
		$areaServicios .= '</fieldset>';
		
		$query = "SELECT DISTINCT s.NOMBRE_SERVICIO, s.PK_ID_SERVICIO
				  FROM DISPONIBILIDAD d, HIST_INSTALACIONES hi, SERVICIO s
				  WHERE d.PK_FK_RIF_LOCAL = '$rif'
				  AND d.PK_FK_ID_SERVICIO_HISTORIAL = hi.PK_FK_ID_SERVICIO
				  AND hi.PK_FK_ID_SERVICIO = s.PK_ID_SERVICIO
				  AND d.STATUS = 'DISPONIBLE'
				  AND d.FECHA IN (SELECT MAX(d.FECHA)
        			   			 FROM DISPONIBILIDAD d, HIST_INSTALACIONES hi, SERVICIO s
               		   			 WHERE d.PK_FK_RIF_LOCAL = '$rif'
               		   			 AND d.PK_FK_ID_SERVICIO_HISTORIAL = hi.PK_FK_ID_SERVICIO
               		   			 AND hi.PK_FK_ID_SERVICIO = s.PK_ID_SERVICIO
               		   			 AND d.STATUS = 'DISPONIBLE'
								 GROUP BY s.PK_ID_SERVICIO)
				  AND s.PK_ID_SERVICIO NOT IN (SELECT s.PK_ID_SERVICIO
			     							   FROM DETALLE_RESERVACION d, SERVICIO s
			     							   WHERE d.PK_FK_ID_RESERVACION = $idReservacion
			     							   AND d.FK_ID_SERVICIO = s.PK_ID_SERVICIO)
				  ORDER BY s.PK_ID_SERVICIO DESC";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
	
		OCILogOff($conexion);
		
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		$respuesta = new xajaxResponse();
		
		if ($rows > 0) {
			$selectServicio = '<select name="idServicio"><option value="Seleccione">Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>';
			
			for ($i = 0; $i < $rows; $i++)
				$selectServicio .= '<option value="' . $resultado['NOMBRE_SERVICIO'][$i] . '">' . $resultado['NOMBRE_SERVICIO'][$i] . '</option>';
			
			$selectServicio .= '</select>';
			
			$respuesta -> assign("selectServicio", "innerHTML", $selectServicio);
		}
		
		$iva = round($totalFactura * ($iva/100), 2);
		$total = round($totalFactura + $iva, 2);
		
		$totalFactura = '<input name="totalFactura" type="text" value="' . $totalFactura . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$totalServicios = '<input name="totalServicios" type="text" value="' . $totalServicios . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$iva = '<input name="iva" type="text" value="' . $iva . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		$total = '<input name="total" type="text" value="' . $total . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$respuesta -> assign("areaServicios", "innerHTML", $areaServicios);
		$respuesta -> assign("totalFactura", "innerHTML", $totalFactura);
		$respuesta -> assign("totalServicios", "innerHTML", $totalServicios);
		$respuesta -> assign("iva", "innerHTML", $iva);
		$respuesta -> assign("total", "innerHTML", $total);
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("buscar_servicios_reservados");
	
	function borrar_area_servicios($totalFactura, $totalServicios, $iva, $rif, $ci) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$servicios[0] = '0';
		$selectServicio = cargarServiciosDisponibles($rif, $servicios);
				
		$cantidadServicio = '<input name="cantidadServicio" type="text" maxlength="4" onblur="xajax_validarCantidadServicio(document.factura.idServicio.options[document.factura.idServicio.selectedIndex].value,
        	   document.factura.cantidadServicio.value)" />';
		
		$areaServicios = '<fieldset><legend><font color="#FFFFFF" size="+1">Servicios</font></legend>';
		$areaServicios .= '<textarea name="servicios" rows="4" cols="70" readonly="readonly"></textarea>';
		
		$totalFactura -= $totalServicios;
		$iva = round($totalFactura * ($iva/100), 2);
		$total = round($totalFactura + $iva, 2);
		
		$totalFactura = '<input name="totalFactura" type="text" value="' . $totalFactura . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$totalServicios = '<input name="totalServicios" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$iva = '<input name="iva" type="text" value="' . $iva . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$total = '<input name="total" type="text" value="' . $total . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("selectReservacion", "innerHTML", $selectReservacion);
		$respuesta -> assign("selectServicio", "innerHTML", $selectServicio);
		$respuesta -> assign("cantidadServicio", "innerHTML", $cantidadServicio);
		$respuesta -> assign("areaServicios", "innerHTML", $areaServicios);
		$respuesta -> assign("totalServicios", "innerHTML", $totalServicios);
		$respuesta -> assign("totalFactura", "innerHTML", $totalFactura);
		$respuesta -> assign("iva", "innerHTML", $iva);
		$respuesta -> assign("total", "innerHTML", $total);
		
		return $respuesta;		
	}
	
	$xajax -> registerFunction("borrar_area_servicios");
	
	function borrarProductos($conexion, $rif, $productos) {
		$explodeProductos = explode(';', $productos);
		
		for ($i = 0; $i < count($explodeProductos)-1; $i++) {
			$explodeProducto = explode(' - ', $explodeProductos[$i]);
			
			if ($i == 0)
				$producto = substr($explodeProducto[0], 3);
				
			else
				$producto = substr($explodeProducto[0], 4);
				
			$cantidad = substr($explodeProducto[1], 0, strpos($explodeProducto[1], 'u')-1);
			
			actualizarInventario($conexion, $rif, $producto, $cantidad, 'insercion');
		}
	}
	
	function borrar_area_productos($productos, $totalFactura, $totalProductos, $iva, $rif) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		borrarProductos($conexion, $rif, $productos);
		
		OCILogOff($conexion);
		
		$productos[0] = '0';
		$selectProducto = cargarProductosDisponibles($rif, $productos);
		
		$cantidadProducto = '<input name="cantidadProducto" type="text" maxlength="4" onblur="xajax_validarCantidadProducto(' . $rif . ',
        		document.factura.idProducto.options[document.factura.idProducto.selectedIndex].value,
         		document.factura.cantidadProducto.value)" />';
		
		$areaProductos = '<fieldset><legend><font color="#FFFFFF" size="+1">Productos</font></legend>';
		$areaProductos .= '<textarea name="productos" rows="4" cols="70" readonly="readonly"></textarea>';
		
		$totalFactura -= $totalProductos;
		$iva = round($totalFactura * ($iva/100), 2);
		$total = round($totalFactura + $iva, 2);
		
		$totalFactura = '<input name="totalFactura" type="text" value="' . $totalFactura . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$totalProductos = '<input name="totalProductos" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$iva = '<input name="iva" type="text" value="' . $iva . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$total = '<input name="total" type="text" value="' . $total . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("selectProducto", "innerHTML", $selectProducto);
		$respuesta -> assign("cantidadProducto", "innerHTML", $cantidadProducto);
		$respuesta -> assign("areaProductos", "innerHTML", $areaProductos);
		$respuesta -> assign("totalProductos", "innerHTML", $totalProductos);
		$respuesta -> assign("totalFactura", "innerHTML", $totalFactura);
		$respuesta -> assign("iva", "innerHTML", $iva);
		$respuesta -> assign("total", "innerHTML", $total);
		
		return $respuesta;		
	}
	
	$xajax -> registerFunction("borrar_area_productos");
	
	function borrarCombos($conexion, $rif, $combos) {
		$explodeCombos = explode(';', $combos);
		
		for ($i = 0; $i < count($explodeCombos)-1; $i++) {
			$explodeCombo = explode(' - ', $explodeCombos[$i]);
			
			if ($i == 0)
				$combo = substr($explodeCombo[0], 3);
				
			else
				$combo = substr($explodeCombo[0], 4);
				
			$cantidad = substr($explodeCombo[1], 0, strpos($explodeCombo[1], 'u')-1);
			
			$query = "SELECT p.NOMBRE, pc.CANTIDAD
		          	  FROM COMBO c, PRO_COM pc, PRODUCTO p
				      WHERE c.NOMBRE = '$combo'
				      AND c.PK_ID_COMBO = pc.PK_FK_ID_COMBO
					  AND pc.PK_FK_ID_PRODUCTO = p.PK_ID_PRODUCTO";
					 
			$sentencia = OCIParse($conexion, $query);
			
			OCIExecute($sentencia);
			
			$filas = OCIFetchstatement($sentencia, $result);
			
			$respuesta = new xajaxResponse();
			
			if ($filas > 0)
				for ($j = 0; $j < $filas; $j++) {
					$producto = $result['NOMBRE'][$j];
					$cantidadProducto = $cantidad * $result['CANTIDAD'][$j];
					
					actualizarInventario($conexion, $rif, $producto, $cantidadProducto, 'insercion');
				}
		}	
	}
	
	function borrar_area_combos($combos, $totalFactura, $totalCombos, $iva, $rif) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		borrarCombos($conexion, $rif, $combos);
		
		OCILogOff($conexion);
		
		$combos[0] = '0';
		$selectCombo = cargarCombosDisponibles($rif, $combos);
				
		$cantidadCombo = '<input name="cantidadCombo" type="text" maxlength="4" onblur="xajax_validarCantidadCombo(' . $rif . ',
        document.factura.idCombo.options[document.factura.idCombo.selectedIndex].value,
        document.factura.cantidadCombo.value)" />';
		
		$areaCombos = '<fieldset><legend><font color="#FFFFFF" size="+1">Combos</font></legend>';
		$areaCombos .= '<textarea name="combos" rows="4" cols="70" readonly="readonly"></textarea>';
		
		$totalFactura -= $totalCombos;
		$iva = round($totalFactura * ($iva/100), 2);
		$total = round($totalFactura + $iva, 2);
		
		$totalFactura = '<input name="totalFactura" type="text" value="' . $totalFactura . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$totalCombos = '<input name="totalCombos" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$iva = '<input name="iva" type="text" value="' . $iva . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$total = '<input name="total" type="text" value="' . $total . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("selectCombo", "innerHTML", $selectCombo);
		$respuesta -> assign("cantidadCombo", "innerHTML", $cantidadCombo);
		$respuesta -> assign("areaCombos", "innerHTML", $areaCombos);
		$respuesta -> assign("totalCombos", "innerHTML", $totalCombos);
		$respuesta -> assign("totalFactura", "innerHTML", $totalFactura);
		$respuesta -> assign("iva", "innerHTML", $iva);
		$respuesta -> assign("total", "innerHTML", $total);
		
		return $respuesta;		
	}
	
	$xajax -> registerFunction("borrar_area_combos");
	
	function borrar_area_habitaciones($numeroFactura, $totalFactura, $totalHabitaciones, $iva, $rif, $ci) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$query = "UPDATE HABITACION SET
				      STATUS_HAB = 'OCUPADA',
					  FK_CI_CLIENTE = $ci
				  WHERE PK_NRO_HAB IN (SELECT FK_NRO_HAB
		          					   FROM DETALLE_FACTURA
				  					   WHERE PK_FK_NUMERO_FACTURA = $numeroFactura
                  					   AND FK_NRO_HAB IS NOT NULL)";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCICommit($conexion);
		
		OCILogOff($conexion);
		
		$selectHabitacion = cargarHabitacionesOcupadas($rif, $ci);
		
		$cantidadHabitacion = '<input name="cantidadHabitacion" type="text" maxlength="4" onblur="xajax_validarCantidadHabitacion(document.factura.idHabitacion.options[document.factura.idHabitacion.selectedIndex].value,
        	   document.factura.cantidadHabitacion.value)" />';
		
		$areaHabitaciones = '<fieldset><legend><font color="#FFFFFF" size="+1">Habitaciones</font></legend>';
		$areaHabitaciones .= '<textarea name="habitaciones" rows="4" cols="70" readonly="readonly"></textarea>';
		
		$totalFactura -= $totalHabitaciones;
		$iva = round($totalFactura * ($iva/100), 2);
		$total = round($totalFactura + $iva, 2);
		
		$totalFactura = '<input name="totalFactura" type="text" value="' . $totalFactura . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$totalHabitaciones = '<input name="totalHabitaciones" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$iva = '<input name="iva" type="text" value="' . $iva . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$total = '<input name="total" type="text" value="' . $total . '" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("selectHabitacion", "innerHTML", $selectHabitacion);
		$respuesta -> assign("cantidadHabitacion", "innerHTML", $cantidadHabitacion);
		$respuesta -> assign("areaHabitaciones", "innerHTML", $areaHabitaciones);
		$respuesta -> assign("totalHabitaciones", "innerHTML", $totalHabitaciones);
		$respuesta -> assign("totalFactura", "innerHTML", $totalFactura);
		$respuesta -> assign("iva", "innerHTML", $iva);
		$respuesta -> assign("total", "innerHTML", $total);
		
		return $respuesta;		
	}
	
	$xajax -> registerFunction("borrar_area_habitaciones");
	
	function reiniciarCampos($rif, $errorCliente, $productos, $combos, $ci) {
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		borrarProductos($conexion, $rif, $productos);
		borrarCombos($conexion, $rif, $combos);
		
		OCILogOff($conexion);

		/**
		 * Reinicializando todos los campos del formulario
		 */
		$servicios[0] = '0';
		$selectServicio = cargarServiciosDisponibles($rif, $servicios);
		
		$cantidadServicio = '<input name="cantidadServicio" type="text" maxlength="4" onblur="xajax_validarCantidadServicio(document.factura.idServicio.options[document.factura.idServicio.selectedIndex].value,
        	   document.factura.cantidadServicio.value)" />';
		
		$areaServicios = '<fieldset><legend><font color="#FFFFFF" size="+1">Servicios</font></legend>';
		$areaServicios .= '<textarea name="servicios" rows="4" cols="70" readonly="readonly"></textarea>';
		
		$totalServicios = '<input name="totalServicios" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$productos[0] = '0';
		$selectProducto = cargarProductosDisponibles($rif, $productos);
				
		$cantidadProducto = '<input name="cantidadProducto" type="text" maxlength="4" onblur="xajax_validarCantidadProducto(' . $rif .',
        		document.factura.idProducto.options[document.factura.idProducto.selectedIndex].value,
         		document.factura.cantidadProducto.value)" />';
		
		$areaProductos = '<fieldset><legend><font color="#FFFFFF" size="+1">Productos</font></legend>';
		$areaProductos .= '<textarea name="productos" rows="4" cols="70" readonly="readonly"></textarea>';
		
		$totalProductos = '<input name="totalProductos" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$combos[0] = '0';
		$selectCombo = cargarCombosDisponibles($rif, $combos);
				
		$cantidadCombo = '<input name="cantidadCombo" type="text" maxlength="4" onblur="xajax_validarCantidadCombo(' . $rif . ',
        document.factura.idCombo.options[document.factura.idCombo.selectedIndex].value,
        document.factura.cantidadCombo.value)" />';
		
		$areaCombos = '<fieldset><legend><font color="#FFFFFF" size="+1">Combos</font></legend>';
		$areaCombos .= '<textarea name="combos" rows="4" cols="70" readonly="readonly"></textarea>';
		
		$totalCombos = '<input name="totalCombos" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$totalFactura = '<input name="totalFactura" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$iva = '<input name="iva" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$total = '<input name="total" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("selectReservacion", "innerHTML", $selectReservacion);
		
		$respuesta -> assign("selectServicio", "innerHTML", $selectServicio);
		$respuesta -> assign("cantidadServicio", "innerHTML", $cantidadServicio);
		$respuesta -> assign("errorCantidadServicio", "innerHTML", '');
		$respuesta -> assign("errorCS", "innerHTML", '<input name="errorCantidadServicio" type="hidden" value="false" />');
		$respuesta -> assign("areaServicios", "innerHTML", $areaServicios);
		$respuesta -> assign("totalServicios", "innerHTML", $totalServicios);
		
		$respuesta -> assign("selectProducto", "innerHTML", $selectProducto);
		$respuesta -> assign("cantidadProducto", "innerHTML", $cantidadProducto);
		$respuesta -> assign("errorCantidadProducto", "innerHTML", '');
		$respuesta -> assign("errorCP", "innerHTML", '<input name="errorCantidadProducto" type="hidden" value="false" />');
		$respuesta -> assign("areaProductos", "innerHTML", $areaProductos);
		$respuesta -> assign("totalProductos", "innerHTML", $totalProductos);
		
		$respuesta -> assign("selectCombo", "innerHTML", $selectCombo);
		$respuesta -> assign("cantidadCombo", "innerHTML", $cantidadCombo);
		$respuesta -> assign("errorCantidadCombo", "innerHTML", '');
		$respuesta -> assign("errorCaC", "innerHTML", '<input name="errorCantidadCombo" type="hidden" value="false" />');
		$respuesta -> assign("areaCombos", "innerHTML", $areaCombos);
		$respuesta -> assign("totalCombos", "innerHTML", $totalCombos);
		
		$respuesta -> assign("totalFactura", "innerHTML", $totalFactura);
		$respuesta -> assign("iva", "innerHTML", $iva);
		$respuesta -> assign("total", "innerHTML", $total);
		
		return $respuesta;		
	}
	
	$xajax -> registerFunction("reiniciarCampos");
	
	function validarCantidadServicio($servicio, $cantidadServicio) {
		$respuesta = new xajaxResponse();
		
		if ($servicio != 'Seleccione') {
			if ($cantidadServicio == '') {
				$respuesta -> assign("errorCantidadServicio", "innerHTML", '<font color="#990000" size="-1">* Campo obligatorio</font>');
				$respuesta -> assign("errorCS", "innerHTML", '<input name="errorCantidadServicio" type="hidden" value="true" />');
			}
			
			else if (!is_numeric($cantidadServicio)) {
				$respuesta -> assign("errorCantidadServicio", "innerHTML", '<font color="#990000" size="-1">* Cantidad debe ser numérica</font>');
				$respuesta -> assign("errorCS", "innerHTML", '<input name="errorCantidadServicio" type="hidden" value="true" />');
			}
			
			else if ($cantidadServicio < 1) {
				$respuesta -> assign("errorCantidadServicio", "innerHTML", '<font color="#990000" size="-1">* Cantidad debe ser positiva</font>');
				$respuesta -> assign("errorCS", "innerHTML", '<input name="errorCantidadServicio" type="hidden" value="true" />');
			}
			
			else {
				$respuesta -> assign("errorCantidadServicio", "innerHTML", '');
				$respuesta -> assign("errorCS", "innerHTML", '<input name="errorCantidadServicio" type="hidden" value="false" />');
			}
		}		
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarCantidadServicio");
	
	function buscarCantidadProductosDisponibles($conexion, $rif, $producto) {
		$query = "SELECT i.CANTIDAD
				  FROM INVENTARIO i, PRODUCTO p
				  WHERE i.PK_FK_RIF_LOCAL = '$rif'
				  AND i.PK_FK_ID_PROD = p.PK_ID_PRODUCTO
				  AND p.NOMBRE = '$producto'";
						  
		$sentencia = OCIParse($conexion, $query);
				
		OCIExecute($sentencia);
		
		OCILogOff($conexion);
				
		$rows = OCIFetchstatement($sentencia, $resultado);
				
		$cantidadProductoReg = 0;
				
		if ($rows > 0)
			$cantidadProductoReg = $resultado['CANTIDAD'][0];
			
		return $cantidadProductoReg;
	}
	
	function validarCantidadProducto($rif, $producto, $cantidadProducto) {
		$respuesta = new xajaxResponse();
		
		if ($producto != 'Seleccione') {
			if ($cantidadProducto == '') {
				$respuesta -> assign("errorCantidadProducto", "innerHTML", '<font color="#990000" size="-1">* Campo obligatorio</font>');
				$respuesta -> assign("errorCP", "innerHTML", '<input name="errorCantidadProducto" type="hidden" value="true" />');
			}
			
			else if (!is_numeric($cantidadProducto)) {
				$respuesta -> assign("errorCantidadProducto", "innerHTML", '<font color="#990000" size="-1">* Cantidad debe ser numérica</font>');
				$respuesta -> assign("errorCP", "innerHTML", '<input name="errorCantidadProducto" type="hidden" value="true" />');
			}
			
			else if ($cantidadProducto < 1) {
				$respuesta -> assign("errorCantidadProducto", "innerHTML", '<font color="#990000" size="-1">* Cantidad debe ser positiva</font>');
				$respuesta -> assign("errorCP", "innerHTML", '<input name="errorCantidadProducto" type="hidden" value="true" />');
			}
			
			else {
				$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
				
				/**
				 * Reccuperando cantidad de unidades disponibles en el inventario
				 */
				$cantidadProductoReg = buscarCantidadProductosDisponibles($conexion, $rif, $producto);
				
				if ($cantidadProducto > $cantidadProductoReg) {
					$respuesta -> assign("errorCantidadProducto", "innerHTML", '<font color="#990000" size="-1">* Sólo existe(n) ' . $cantidadProductoReg . ' unidad(es) disponible(s)</font>');
					$respuesta -> assign("errorCP", "innerHTML", '<input name="errorCantidadProducto" type="hidden" value="true" />');
				}
				
				else {
					$respuesta -> assign("errorCantidadProducto", "innerHTML", '');
					$respuesta -> assign("errorCP", "innerHTML", '<input name="errorCantidadProducto" type="hidden" value="false" />');	
				}
			}
		}
		
		else {
			$respuesta -> assign("errorCantidadProducto", "innerHTML", '');
			$respuesta -> assign("errorCP", "innerHTML", '<input name="errorCantidadProducto" type="hidden" value="false" />');
		}
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarCantidadProducto");
	
	function buscarProductosCombo($conexion, $combo) {
		$query = "SELECT p.NOMBRE, pc.CANTIDAD
				  FROM COMBO c, PRO_COM pc, PRODUCTO p
				  WHERE c.NOMBRE = '$combo'
				  AND c.PK_ID_COMBO = pc.PK_FK_ID_COMBO
				  AND pc.PK_FK_ID_PRODUCTO = p.PK_ID_PRODUCTO";
						  
		$sentencia = OCIParse($conexion, $query);
				
		OCIExecute($sentencia);
				
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		return $resultado;
	}
	
	function validarCantidadCombo($rif, $combo, $cantidadCombo) {
		$respuesta = new xajaxResponse();
		
		if ($combo != 'Seleccione') {			
			if ($cantidadCombo == '') {
				$respuesta -> assign("errorCantidadCombo", "innerHTML", '<font color="#990000" size="-1">* Campo obligatorio</font>');
				$respuesta -> assign("errorCaC", "innerHTML", '<input name="errorCantidadCombo" type="hidden" value="true" />');
			}
			
			else if (!is_numeric($cantidadCombo)) {
				$respuesta -> assign("errorCantidadCombo", "innerHTML", '<font color="#990000" size="-1">* Cantidad debe ser numérica</font>');
				$respuesta -> assign("errorCaC", "innerHTML", '<input name="errorCantidadCombo" type="hidden" value="true" />');
			}
			
			else if ($cantidadCombo < 1) {
				$respuesta -> assign("errorCantidadCombo", "innerHTML", '<font color="#990000" size="-1">* Cantidad debe ser positiva</font>');
				$respuesta -> assign("errorCaC", "innerHTML", '<input name="errorCantidadCombo" type="hidden" value="true" />');
			}
			
			else {
				$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
				
				/**
				 * Reccuperando productos del combo seleccionado
				 */
				$productos = buscarProductosCombo($conexion, $combo);
				
				$i = 0;
				
				if ($productos > 0)
					for ($i = 0; $i < count($productos)-1; $i++) {
						$producto = $productos['NOMBRE'][$i];
						$cantidadProductoCom = $productos['CANTIDAD'][$i];
						
						$cantidadProductoInv = buscarCantidadProductosDisponibles($conexion, $rif, $producto);
						
						if ($cantidadProductoInv < $cantidadCombo*$cantidadProductoCom) {
							$respuesta -> assign("errorCantidadCombo", "innerHTML", '<font color="#990000" size="-1">* Sólo existe(n) ' . $cantidadProductoInv . ' unidad(es) disponible(s) del producto ' . $producto . '</font>');
							$respuesta -> assign("errorCaC", "innerHTML", '<input name="errorCantidadCombo" type="hidden" value="true" />');
							break;
						}
					}
				
				if ($i == count($productos)-1) {
					$respuesta -> assign("errorCantidadCombo", "innerHTML", '');
					$respuesta -> assign("errorCaC", "innerHTML", '<input name="errorCantidadCombo" type="hidden" value="false" />');		
				}
			}
		}
		
		else {
			$respuesta -> assign("errorCantidadCombo", "innerHTML", '');
			$respuesta -> assign("errorCaC", "innerHTML", '<input name="errorCantidadCombo" type="hidden" value="false" />');
		}
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarCantidadCombo");
	
	function validarCantidadHabitacion($habitacion, $cantidadHabitacion) {
		$respuesta = new xajaxResponse();
		
		if ($habitacion != 'Seleccione') {
			if ($cantidadHabitacion == '') {
				$respuesta -> assign("errorCantidadHabitacion", "innerHTML", '<font color="#990000" size="-1">* Campo obligatorio</font>');
				$respuesta -> assign("errorCH", "innerHTML", '<input name="errorCantidadHabitacion" type="hidden" value="true" />');
			}
			
			else if (!is_numeric($cantidadHabitacion)) {
				$respuesta -> assign("errorCantidadHabitacion", "innerHTML", '<font color="#990000" size="-1">* Cantidad debe ser numérica</font>');
				$respuesta -> assign("errorCH", "innerHTML", '<input name="errorCantidadHabitacion" type="hidden" value="true" />');
			}
			
			else if ($cantidadHabitacion < 1) {
				$respuesta -> assign("errorCantidadHabitacion", "innerHTML", '<font color="#990000" size="-1">* Cantidad debe ser positiva</font>');
				$respuesta -> assign("errorCH", "innerHTML", '<input name="errorCantidadHabitacion" type="hidden" value="true" />');
			}
			
			else {
				$respuesta -> assign("errorCantidadHabitacion", "innerHTML", '');
				$respuesta -> assign("errorCH", "innerHTML", '<input name="errorCantidadHabitacion" type="hidden" value="false" />');
			}
		}		
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarCantidadHabitacion");
	
	function buscarIdsReservaciones($explodeServicios) {
		$idsReservaciones[0] = 0;
		$j = -1;
		
		for ($i = 0; $i < count($explodeServicios)-1; $i++) {
			$servicio = explode(' - ', $explodeServicios[$i]);
			
			if (substr_count($servicio[0], 'Reservacion') > 0)				
				$idsReservaciones[++$j] = substr($servicio[1], 0, strpos($servicio[1], '-')-1);
		}
		
		return $idsReservaciones;
	}
	
	function buscarServicios($explodeServicios) {
		$servicios['CANTIDAD'][0] = 0;
		$j = -1;
		
		for ($i = 0; $i < count($explodeServicios)-1; $i++) {
			$servicio = explode(' - ', $explodeServicios[$i]);
			
			if ((substr_count($servicio[0], '*') == 0) && (substr_count($servicio[0], '--') == 0)
					&& (substr_count($servicio[0], '_') == 0) && (substr_count($servicio[0], 'Reservacion') == 0)) {
				if ($i == 0)
					$servicios['NOMBRE'][++$j] = substr($servicio[0], 3);
					
				else
					$servicios['NOMBRE'][++$j] = substr($servicio[0], 4);
					
				$servicios['CANTIDAD'][$j] = substr($servicio[1], 0, strpos($servicio[1], 'se')-1);
			}				
		}
		
	  return $servicios;
	}
	
	function buscarProductos($explodeProductos) {
		$productos['CANTIDAD'][0] = 0;
		$j = -1;
		
		for ($i = 0; $i < count($explodeProductos)-1; $i++) {
			$producto = explode(' - ', $explodeProductos[$i]);
		   
		    if ($i == 0)
				$productos['NOMBRE'][++$j] = substr($producto[0], 3);
			
			else
				$productos['NOMBRE'][++$j] = substr($producto[0], 4);
				
			$productos['CANTIDAD'][$j] = substr($producto[1], 0, strpos($producto[1], 'u')-1);
		}
		
		return $productos;
	}
	
	function buscarCombos($explodeCombos) {
		$combos['CANTIDAD'][0] = 0;
		$j = -1;
		
		for ($i = 0; $i < count($explodeCombos)-1; $i++) {
			$combo = explode(' - ', $explodeCombos[$i]);
		   
		    if ($i == 0)
				$combos['NOMBRE'][++$j] = substr($combo[0], 3);
			
			else
				$combos['NOMBRE'][++$j] = substr($combo[0], 4);
				
			$combos['CANTIDAD'][$j] = substr($combo[1], 0, strpos($combo[1], 'u')-1);
		}
		
		return $combos;
	}
	
	function buscarHabitaciones($explodeHabitaciones) {
		$habitaciones['CANTIDAD'][0] = 0;
		$j = -1;
		
		for ($i = 0; $i < count($explodeHabitaciones); $i++) {
			$habitacion = explode(' - ', $explodeHabitaciones[$i]);
		   
		    if ($i == 0)
				$habitaciones['NUMERO'][++$j] = substr($habitacion[0], 14);
			
			else
				$habitaciones['NUMERO'][++$j] = substr($habitacion[0], 15);
				
			$habitaciones['CANTIDAD'][$j] = substr($habitacion[1], 0, strpos($habitacion[1], 'n')-1);
		}
		
		return $habitaciones;
	}
	
	function modificarDetallesFactura($conexion, $numeroFactura, $idsReservaciones, $servicios, $productos, $combos, $habitaciones) {
		$indiceDetalleFactura = 0;
		$indiceServicios = 0;
		$indiceHabitaciones = 0;
		$detallesFactura['CANTIDAD_SERVICIOS'][0] = 0;
		
		$cantidadDeServicios = count($servicios['NOMBRE']);
		
		$cantidadDeProductos = count($productos['NOMBRE']);
		
		$cantidadDeCombos = count($combos['NOMBRE']);
		
		$cantidadDeHabitaciones = count($habitaciones['NUMERO']) - 1;
		
		while (($indiceServicios < $cantidadDeServicios) || ($indiceDetalleFactura < $cantidadDeProductos) || 
				($indiceDetalleFactura < $cantidadDeCombos) || ($indiceHabitaciones < $cantidadDeHabitaciones)) {					
			if ($indiceServicios < $cantidadDeServicios) {
				$detallesFactura['NOMBRE_SERVICIO'][$indiceDetalleFactura] = 
					$servicios['NOMBRE'][$indiceServicios];
								
				$detallesFactura['CANTIDAD_SERVICIOS'][$indiceDetalleFactura] = 
					$servicios['CANTIDAD'][$indiceServicios];
			}
				
			if ($indiceDetalleFactura < $cantidadDeProductos) {
				$detallesFactura['NOMBRE_PRODUCTO'][$indiceDetalleFactura] = 
					$productos['NOMBRE'][$indiceDetalleFactura];
								
				$detallesFactura['CANTIDAD_PRODUCTOS'][$indiceDetalleFactura] = 
					$productos['CANTIDAD'][$indiceDetalleFactura];
			}
						
			if ($indiceDetalleFactura < $cantidadDeCombos) {
				$detallesFactura['NOMBRE_COMBO'][$indiceDetalleFactura] = 
					$combos['NOMBRE'][$indiceDetalleFactura];
							
				$detallesFactura['CANTIDAD_COMBOS'][$indiceDetalleFactura] = 
						$combos['CANTIDAD'][$indiceDetalleFactura];
			}
			
			if ($indiceHabitaciones < $cantidadDeHabitaciones) {
				$detallesFactura['NUMERO_HABITACION'][$indiceDetalleFactura] = 
					$habitaciones['NUMERO'][$indiceHabitaciones];
							
				$detallesFactura['CANTIDAD_HABITACIONES'][$indiceDetalleFactura] = 
						$habitaciones['CANTIDAD'][$indiceHabitaciones];
			}
			
			// Insertar en DETALLE_FACTURA
						
			if ($indiceServicios < $cantidadDeServicios) { // Hay servicios
				$nombreServicio = $detallesFactura['NOMBRE_SERVICIO'][$indiceDetalleFactura];
				$cantidadServicios = $detallesFactura['CANTIDAD_SERVICIOS'][$indiceDetalleFactura];
				
				$idServicio = "SELECT PK_ID_SERVICIO FROM SERVICIO WHERE NOMBRE_SERVICIO = '$nombreServicio'";
				
				if ($indiceDetalleFactura < $cantidadDeProductos) { // Hay servicios y productos
					$nombreProducto = $detallesFactura['NOMBRE_PRODUCTO'][$indiceDetalleFactura];
					$cantidadProductos = $detallesFactura['CANTIDAD_PRODUCTOS'][$indiceDetalleFactura];
					
					$idProducto = "SELECT PK_ID_PRODUCTO FROM PRODUCTO WHERE NOMBRE = '$nombreProducto'";
					
					if ($indiceDetalleFactura < $cantidadDeCombos) { // Hay servicios, productos y combos
						$nombreCombo = $detallesFactura['NOMBRE_COMBO'][$indiceDetalleFactura];
						$cantidadCombos = $detallesFactura['CANTIDAD_COMBOS'][$indiceDetalleFactura];
	
						$idCombo = "SELECT PK_ID_COMBO FROM COMBO WHERE NOMBRE = '$nombreCombo'";
						
						if ($indiceHabitaciones < $cantidadDeHabitaciones) { // Hay servicios, productos, combos y habitaciones
							$numeroHabitacion = $detallesFactura['NUMERO_HABITACION'][$indiceDetalleFactura];
							$cantidadHabitaciones = $detallesFactura['CANTIDAD_HABITACIONES'][$indiceDetalleFactura];
	
							$query = "INSERT INTO DETALLE_FACTURA
			 		  				  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, $cantidadServicios, $cantidadProductos, $cantidadCombos,
											  $cantidadHabitaciones, $numeroFactura, ($idServicio), ($idProducto), ($idCombo),
											  $numeroHabitacion)";
						}
						
						else { // Hay servicios, productos y combos pero no habitaciones
							$numeroHabitacion = NULL;
							$cantidadHabitaciones = NULL;
	
							$query = "INSERT INTO DETALLE_FACTURA
			 		  				  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, $cantidadServicios, $cantidadProductos, $cantidadCombos,
											  '$cantidadHabitaciones', $numeroFactura, ($idServicio), ($idProducto), ($idCombo),
											  '$numeroHabitacion')";
						}
					}
					
					else if ($indiceHabitaciones < $cantidadDeHabitaciones) { /* Hay servicios, productos
																				   y habitaciones pero no combos */
						$idCombo = NULL;
						$cantidadCombos = NULL;						
						
						$numeroHabitacion = $detallesFactura['NUMERO_HABITACION'][$indiceDetalleFactura];
						$cantidadHabitaciones = $detallesFactura['CANTIDAD_HABITACIONES'][$indiceDetalleFactura];
	
						$query = "INSERT INTO DETALLE_FACTURA
			 		  			  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, $cantidadServicios, $cantidadProductos, '$cantidadCombos',
										  $cantidadHabitaciones, $numeroFactura, ($idServicio), ($idProducto), '$idCombo',
										  $numeroHabitacion)";
					}
					
					else { // Hay servicios y productos pero no combos ni habitaciones
						$idCombo = NULL;
						$cantidadCombos = NULL;						
						
						$numeroHabitacion = NULL;
						$cantidadHabitaciones = NULL;
	
						$query = "INSERT INTO DETALLE_FACTURA
			 		  			  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, $cantidadServicios, $cantidadProductos, '$cantidadCombos',
										  '$cantidadHabitaciones', $numeroFactura, ($idServicio), ($idProducto), '$idCombo',
										  '$numeroHabitacion')";
					}
				}
					
				else if ($indiceDetalleFactura < $cantidadDeCombos) { // Hay servicios y combos pero no productos
					$idProducto = NULL;
					$cantidadProductos = NULL;
					
					$nombreCombo = $detallesFactura['NOMBRE_COMBO'][$indiceDetalleFactura];
					$cantidadCombos = $detallesFactura['CANTIDAD_COMBOS'][$indiceDetalleFactura];
					
					$idCombo = "SELECT PK_ID_COMBO FROM COMBO WHERE NOMBRE = '$nombreCombo'";
					
					if ($indiceHabitaciones < $cantidadDeHabitaciones) { // Hay servicios, combos y habitaciones pero no productos
						$numeroHabitacion = $detallesFactura['NUMERO_HABITACION'][$indiceDetalleFactura];
						$cantidadHabitaciones = $detallesFactura['CANTIDAD_HABITACIONES'][$indiceDetalleFactura];
	
						$query = "INSERT INTO DETALLE_FACTURA
			 		  			  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, $cantidadServicios, '$cantidadProductos', $cantidadCombos,
										  $cantidadHabitaciones, $numeroFactura, ($idServicio), '$idProducto', ($idCombo),
										  $numeroHabitacion)";
					}
					
					else { // Hay servicios y combos pero no productos ni habitaciones
						$numeroHabitacion = NULL;
						$cantidadHabitaciones = NULL;
	
						$query = "INSERT INTO DETALLE_FACTURA
			 		  			  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, $cantidadServicios, '$cantidadProductos', $cantidadCombos,
										  '$cantidadHabitaciones', $numeroFactura, ($idServicio), '$idProducto', ($idCombo),
										  '$numeroHabitacion')";
					}
				}
				
				else { // Hay servicios pero no productos ni combos
					$idProducto = NULL;
					$cantidadProductos = NULL;
					
					$idCombo = NULL;
					$cantidadCombos = NULL;
					
					if ($indiceHabitaciones < $cantidadDeHabitaciones) { /* Hay servicios y habitaciones 
																			  pero no productos ni combos */
						$numeroHabitacion = $detallesFactura['NUMERO_HABITACION'][$indiceDetalleFactura];
						$cantidadHabitaciones = $detallesFactura['CANTIDAD_HABITACIONES'][$indiceDetalleFactura];
	
						$query = "INSERT INTO DETALLE_FACTURA
			 		  			  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, $cantidadServicios, '$cantidadProductos', '$cantidadCombos',
										  $cantidadHabitaciones, $numeroFactura, ($idServicio), '$idProducto', '$idCombo',
										  $numeroHabitacion)";
					}
					
					else { // Hay servicios pero no productos ni combos ni habitaciones
						$numeroHabitacion = NULL;
						$cantidadHabitaciones = NULL;
	
						$query = "INSERT INTO DETALLE_FACTURA
			 		  			  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, $cantidadServicios, '$cantidadProductos', '$cantidadCombos',
										  '$cantidadHabitaciones', $numeroFactura, ($idServicio), '$idProducto', '$idCombo',
										  '$numeroHabitacion')";
					}
				}
			}
			
			else if ($indiceDetalleFactura < $cantidadDeProductos) { // Hay productos pero no servicios
				$idServicio = NULL;
				$cantidadServicios = NULL;
			
				$nombreProducto = $detallesFactura['NOMBRE_PRODUCTO'][$indiceDetalleFactura];
				$cantidadProductos = $detallesFactura['CANTIDAD_PRODUCTOS'][$indiceDetalleFactura];
				
				$idProducto = "SELECT PK_ID_PRODUCTO FROM PRODUCTO WHERE NOMBRE = '$nombreProducto'";
				
				if ($indiceDetalleFactura < $cantidadDeCombos) { // Hay productos y combos pero no servicios
					$nombreCombo = $detallesFactura['NOMBRE_COMBO'][$indiceDetalleFactura];
					$cantidadCombos = $detallesFactura['CANTIDAD_COMBOS'][$indiceDetalleFactura];
					
					$idCombo = "SELECT PK_ID_COMBO FROM COMBO WHERE NOMBRE = '$nombreCombo'";
					
					if ($indiceHabitaciones < $cantidadDeHabitaciones) { // Hay productos, combos y habitaciones pero no servicios
						$numeroHabitacion = $detallesFactura['NUMERO_HABITACION'][$indiceDetalleFactura];
						$cantidadHabitaciones = $detallesFactura['CANTIDAD_HABITACIONES'][$indiceDetalleFactura];
	
						$query = "INSERT INTO DETALLE_FACTURA
			 		  			  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, '$cantidadServicios', $cantidadProductos, $cantidadCombos,
										  $cantidadHabitaciones, $numeroFactura, '$idServicio', ($idProducto), ($idCombo),
										  $numeroHabitacion)";
					}
					
					else { // Hay productos y combos pero no servicios ni habitaciones
						$numeroHabitacion = NULL;
						$cantidadHabitaciones = NULL;
	
						$query = "INSERT INTO DETALLE_FACTURA
			 		  			  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, '$cantidadServicios', $cantidadProductos, $cantidadCombos,
										  '$cantidadHabitaciones', $numeroFactura, '$idServicio', ($idProducto), ($idCombo),
										  '$numeroHabitacion')";
					}
				}
				
				else { // Hay productos pero no servicios ni combos
					$idServicio = NULL;
					$cantidadServicios = NULL;
					
					$idCombo = NULL;
					$cantidadCombos = NULL;		
					
					if ($indiceHabitaciones < $cantidadDeHabitaciones) { // Hay productos y habitaciones pero no servicios ni combos
						$numeroHabitacion = $detallesFactura['NUMERO_HABITACION'][$indiceDetalleFactura];
						$cantidadHabitaciones = $detallesFactura['CANTIDAD_HABITACIONES'][$indiceDetalleFactura];
	
						$query = "INSERT INTO DETALLE_FACTURA
			 		  			  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, '$cantidadServicios', $cantidadProductos, '$cantidadCombos',
										  $cantidadHabitaciones, $numeroFactura, '$idServicio', ($idProducto), '$idCombo',
										  $numeroHabitacion)";
					}
					
					else { // Hay productos pero no servicios ni combos ni habitaciones
						$numeroHabitacion = NULL;
						$cantidadHabitaciones = NULL;
	
						$query = "INSERT INTO DETALLE_FACTURA
			 		  			  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, '$cantidadServicios', $cantidadProductos, '$cantidadCombos',
										  '$cantidadHabitaciones', $numeroFactura, '$idServicio', ($idProducto), '$idCombo',
										  '$numeroHabitacion')";
					}
				}
			}
			
			else if ($indiceDetalleFactura < $cantidadDeCombos) { // Hay combos pero no servicios ni productos
				$nombreCombo = $detallesFactura['NOMBRE_COMBO'][$indiceDetalleFactura];
				$cantidadCombos = $detallesFactura['CANTIDAD_COMBOS'][$indiceDetalleFactura];
				
				$idCombo = "SELECT PK_ID_COMBO FROM COMBO WHERE NOMBRE = '$nombreCombo'";
				
				$idServicio = NULL;
				$cantidadServicios = NULL;
				
				$idProducto = NULL;
				$cantidadProductos = NULL;
				
				if ($indiceHabitaciones < $cantidadDeHabitaciones) { // Hay combos y habitaciones pero no servicios ni productos
					$numeroHabitacion = $detallesFactura['NUMERO_HABITACION'][$indiceDetalleFactura];
					$cantidadHabitaciones = $detallesFactura['CANTIDAD_HABITACIONES'][$indiceDetalleFactura];
	
					$query = "INSERT INTO DETALLE_FACTURA
			 				  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, '$cantidadServicios', '$cantidadProductos', $cantidadCombos,
									  $cantidadHabitaciones, $numeroFactura, '$idServicio', '$idProducto', ($idCombo),
									  $numeroHabitacion)";
				}
					
				else { // Hay combos pero no servicios ni productos ni habitaciones
					$numeroHabitacion = NULL;
					$cantidadHabitaciones = NULL;
	
					$query = "INSERT INTO DETALLE_FACTURA
			 	  			  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, '$cantidadServicios', '$cantidadProductos', $cantidadCombos,
									  '$cantidadHabitaciones', $numeroFactura, '$idServicio', '$idProducto', ($idCombo),
									  '$numeroHabitacion')";
				}
			}
			
			else if ($indiceHabitaciones < $cantidadDeHabitaciones) { // Hay habitaciones pero no servicios ni productos ni combos
				$idServicio = NULL;
				$cantidadServicios = NULL;
				
				$idProducto = NULL;
				$cantidadProductos = NULL;
				
				$idCombo = NULL;
				$cantidadCombos = NULL;
				
				$numeroHabitacion = $detallesFactura['NUMERO_HABITACION'][$indiceDetalleFactura];
				$cantidadHabitaciones = $detallesFactura['CANTIDAD_HABITACIONES'][$indiceDetalleFactura];
	
				$query = "INSERT INTO DETALLE_FACTURA
			 			  VALUES (PK_ID_DETALLE_FACTURA.NEXTVAL, '$cantidadServicios', '$cantidadProductos', '$cantidadCombos',
								  $cantidadHabitaciones, $numeroFactura, '$idServicio', '$idProducto', '$idCombo',
								  $numeroHabitacion)";
			}
			
			$sentencia = OCIParse($conexion, $query);
						
			OCIExecute($sentencia);
						
			OCICommit($conexion);
			
			if ($numeroHabitacion != NULL) {
				$query = "UPDATE HABITACION SET
			    	          STATUS_HAB = 'DISPONIBLE',
							  FK_CI_CLIENTE = NULL
					  	  WHERE PK_NRO_HAB = $numeroHabitacion";
					  
				$sentencia = OCIParse($conexion, $query);
						
				OCIExecute($sentencia);
						
				OCICommit($conexion);
			}
			
			$indiceDetalleFactura++;
			$indiceServicios++;
			$indiceHabitaciones++;
			
		} // fin while
		
	} // fin función
	
	function modificar_detalles($conexion, $numeroFactura, $servicios, $productos, $combos, $habitaciones) {
		$explodeServicios = explode(';', $servicios);
		$explodeProductos = explode(';', $productos);
		$explodeCombos = explode(';', $combos);
		$explodeHabitaciones = explode(';', $habitaciones);
		
		/**
		 * Eliminando los detalles de la factura
		 */
		$query = "UPDATE RESERVACION SET
		              FK_NUMERO_FACTURA = NULL
				  WHERE FK_NUMERO_FACTURA = $numeroFactura";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCICommit($conexion);
		
		$query = "DELETE
		          FROM DETALLE_FACTURA
				  WHERE PK_FK_NUMERO_FACTURA = $numeroFactura";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCICommit($conexion);
		
		/**
		 * Insertando los nuevos detalles de la factura
		 */		
		$idsReservaciones = buscarIdsReservaciones($explodeServicios);
		
		$servicios = buscarServicios($explodeServicios);
		
		$productos = buscarProductos($explodeProductos);
		
		$combos = buscarCombos($explodeCombos);
		
		$habitaciones = buscarHabitaciones($explodeHabitaciones);
		
		modificarDetallesFactura($conexion, $numeroFactura, $idsReservaciones, $servicios, $productos, $combos, $habitaciones);
	}
	
	function modificar_factura($factura, $numeroFactura) {
		$rif = $factura['rif'];
		$fechaEmision = $factura['fechaEmisionOculta'];
		$tasaImpuestos = $factura['tasaImpuestos'];
		$ciCliente = $factura['ciOculta'];
		
		$totalServicios = $factura['totalServicios'];
		$totalProductos = $factura['totalProductos'];
		$totalCombos = $factura['totalCombos'];
		$totalHabitaciones = $factura['totalHabitaciones'];
		
		$subtotal = $factura['totalFactura'];
		$iva = $factura['iva'];
		$total = $factura['total'];
		
		$servicios = $factura['servicios'];
		$productos = $factura['productos'];
		$combos = $factura['combos'];
		$habitaciones = $factura['habitaciones'];
		
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		/**
		 * Modificando la factura
		 */
		$query = "UPDATE FACTURA SET
		              SUBTOTAL = $subtotal,
					  TOTAL = $total
				  WHERE PK_NUMERO = $numeroFactura";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCICommit($conexion);
		
		/**
		 * Modificando los detalles de la factura
		 */
		modificar_detalles($conexion, $numeroFactura, $servicios, $productos, $combos, $habitaciones);
		
		OCILogOff($conexion);
		
		/**
		 * Confirmando modificación exitosa
		 */
		$etiquetaReservaciones = '';
		$selectReservacion = '';
		
		$etiquetaServicios = '';
		$selectServicio = '';
		$etiquetaCantidadServicio = '';
		$cantidadServicio = '';
		$errorCantidadServicio = '';
		$agregarServicios = '';
		$totalServicios = '<font color="#FFFFFF">' . $totalServicios . ' $US</font>';
		$borrarServicios = '';
		
		$etiquetaProductos = '';
		$selectProducto = '';
		$etiquetaCantidadProducto = '';
		$cantidadProducto = '';
		$errorCantidadProducto = '';
		$agregarProductos = '';
		$totalProductos = '<font color="#FFFFFF">' . $totalProductos .' $US</font>';
		$borrarProductos = '';
		
		$etiquetaCombos = '';
		$selectCombo = '';
		$etiquetaCantidadCombo = '';
		$cantidadCombo = '';
		$errorCantidadCombo = '';
		$agregarCombos = '';
		$totalCombos = '<font color="#FFFFFF">' . $totalCombos .' $US</font>';
		$borrarCombos = '';
		
		$etiquetaHabitaciones = '';
		$selectHabitacion = '';
		$etiquetaCantidadHabitacion = '';
		$cantidadHabitacion = '';
		$errorCantidadHabitacion = '';
		$agregarHabitaciones = '';
		$totalHabitaciones = '<font color="#FFFFFF">' . $totalHabitaciones .' $US</font>';
		$borrarHabitaciones = '';
		
		$subtotal = '<font color="#FFFFFF">' . $subtotal .' $US</font>';
		$iva = '<font color="#FFFFFF">' . $iva .' $US</font>';
		$total = '<font color="#FFFFFF">' . $total .' $US</font>';
		
		$modificar = '';
		
		$mensaje = '<font color="#FFFFFF" size="+1">¡MODIFICACIÓN EXITOSA!</font>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("etiquetaReservaciones", "innerHTML", $etiquetaReservaciones);
		$respuesta -> assign("selectReservacion", "innerHTML", $selectReservacion);
		$respuesta -> assign("reserv", "innerHTML", '');
		
		$respuesta -> assign("etiquetaServicios", "innerHTML", $etiquetaServicios);
		$respuesta -> assign("selectServicio", "innerHTML", $selectServicio);
		$respuesta -> assign("etiquetaCantidadServicio", "innerHTML", $etiquetaCantidadServicio);
		$respuesta -> assign("cantidadServicio", "innerHTML", $cantidadServicio);
		$respuesta -> assign("errorCantidadServicio", "innerHTML", $errorCantidadServicio);
		$respuesta -> assign("agregarServicios", "innerHTML", $agregarServicios);
		$respuesta -> assign("totalServicios", "innerHTML", $totalServicios);
		$respuesta -> assign("borrarServicios", "innerHTML", $borrarServicios);
		
		$respuesta -> assign("etiquetaProductos", "innerHTML", $etiquetaProductos);
		$respuesta -> assign("selectProducto", "innerHTML", $selectProducto);
		$respuesta -> assign("etiquetaCantidadProducto", "innerHTML", $etiquetaCantidadProducto);
		$respuesta -> assign("cantidadProducto", "innerHTML", $cantidadProducto);
		$respuesta -> assign("errorCantidadProducto", "innerHTML", $errorCantidadProducto);
		$respuesta -> assign("agregarProductos", "innerHTML", $agregarProductos);
		$respuesta -> assign("totalProductos", "innerHTML", $totalProductos);
		$respuesta -> assign("borrarProductos", "innerHTML", $borrarProductos);
		
		$respuesta -> assign("etiquetaCombos", "innerHTML", $etiquetaCombos);
		$respuesta -> assign("selectCombo", "innerHTML", $selectCombo);
		$respuesta -> assign("etiquetaCantidadCombo", "innerHTML", $etiquetaCantidadCombo);
		$respuesta -> assign("cantidadCombo", "innerHTML", $cantidadCombo);
		$respuesta -> assign("errorCantidadCombo", "innerHTML", $errorCantidadCombo);
		$respuesta -> assign("agregarCombos", "innerHTML", $agregarCombos);
		$respuesta -> assign("totalCombos", "innerHTML", $totalCombos);
		$respuesta -> assign("borrarCombos", "innerHTML", $borrarCombos);
		
		$respuesta -> assign("etiquetaHabitaciones", "innerHTML", $etiquetaHabitaciones);
		$respuesta -> assign("selectHabitacion", "innerHTML", $selectHabitacion);
		$respuesta -> assign("etiquetaCantidadHabitacion", "innerHTML", $etiquetaCantidadHabitacion);
		$respuesta -> assign("cantidadHabitacion", "innerHTML", $cantidadHabitacion);
		$respuesta -> assign("errorCantidadHabitacion", "innerHTML", $errorCantidadHabitacion);
		$respuesta -> assign("agregarHabitaciones", "innerHTML", $agregarHabitaciones);
		$respuesta -> assign("totalHabitaciones", "innerHTML", $totalHabitaciones);
		$respuesta -> assign("borrarHabitaciones", "innerHTML", $borrarHabitaciones);
		
		$respuesta -> assign("totalFactura", "innerHTML", $subtotal);
		$respuesta -> assign("iva", "innerHTML", $iva);
		$respuesta -> assign("total", "innerHTML", $total);
		
		$respuesta -> assign("modificar", "innerHTML", $modificar);
		
		$respuesta -> assign("mensaje", "innerHTML", $mensaje);
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("modificar_factura");
	
	function inicializarAreaServicios($servicio, $cantidad, $costo) {
		$areaServicios = '&raquo; ' . $servicio . ' - ' . $cantidad . ' servicio';
		
		if ($cantidad > 1)
			$areaServicios .= 's';
			
		$areaServicios .= ' - ' . $costo . " \$US;\n";
		
		return $areaServicios;
	}
	
	function inicializarAreaProductos($producto, $cantidad, $costo) {
		$areaProductos = '&raquo; ' . $producto . ' - ' . $cantidad . ' unidad';
		
		if ($cantidad > 1)
			$areaProductos .= 'es';
			
		$areaProductos .= ' - ' . $costo . " \$US;\n";
		
		return $areaProductos;
	}
	
	function inicializarAreaCombos($combo, $cantidad, $costo) {
		$areaCombos = '&raquo; ' . $combo . ' - ' . $cantidad . ' unidad';
		
		if ($cantidad > 1)
			$areaCombos .= 'es';
			
		$areaCombos .= ' - ' . $costo . " \$US;\n";
		
		return $areaCombos;
	}
	
	function inicializarAreaHabitaciones($habitacion, $cantidad, $costo) {
		$areaHabitaciones = '&raquo; Habitación ' . $habitacion . ' - ' . $cantidad . ' noche';
		
		if ($cantidad > 1)
			$areaHabitaciones .= 's';
			
		$areaHabitaciones .= ' - ' . $costo . " \$US;\n";
		
		return $areaHabitaciones;
	}
	
	function inicializarAreaReservaciones($servicio, $cantidadServicio, $habitacion, $cantidadHabitacion) {
		if ($servicio != '') {
			$areaReservaciones = '* ' . $servicio . ' - ' . $cantidadServicio . ' servicio';
		
			if ($cantidadServicio > 1)
				$areaReservaciones .= 's';
			
			$areaReservaciones .= ";\n";
		}
		
		if ($habitacion != '') {
			$areaReservaciones = '* Habitación ' . $habitacion . ' - ' . $cantidadHabitacion . ' noche';
		
			if ($cantidadHabitacion > 1)
				$areaReservaciones .= 's';
			
			$areaReservaciones .= ";\n";
		}
		
		return $areaReservaciones;
	}
	
	function cargarInformacionFactura($numeroFactura, $rif) {
		$respuesta = new xajaxResponse();
		
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		$query = "SELECT FK_CI, FECHA_EMISION, IVA
				  FROM FACTURA
				  WHERE PK_NUMERO = $numeroFactura";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		$reservaciones[0] = 0; $r = 0;
		
		if ($rows > 0) {
			$ciOculta = '<input name="ciOculta" type="hidden" value="' . $resultado['FK_CI'][0] . '" />';
			$ci = '<font color="#FFFFFF">' . buscarNombreCliente($resultado['FK_CI'][0]) . '/C.I. ' . $resultado['FK_CI'][0] . '</font>';
			$fechaEmision = '<font color="#FFFFFF">' . $resultado['FECHA_EMISION'][0] . '</font>';	
			$fechaEmisionOculta = '<input name="fechaEmisionOculta" type="hidden" value="' . $resultado['FECHA_EMISION'][0] . '" />';
			$tasaImpuestos = $resultado['IVA'][0];
			$tasaImpuestosOculta = '<input name="tasaImpuestos" type="hidden" value="' . $tasaImpuestos . '" />';
		}
		
		$cedula = $resultado['FK_CI'][0];
		
		$query = "SELECT e.PK_CODIGO
				  FROM EMPLEADO e, HISTORIAL_EMPLEADOS he
				  WHERE e.CI = $cedula
				  AND e.STATUS = 'ACTIVO'
				  AND e.PK_CODIGO = he.PK_FK_CODIGO
				  AND FECHA_FIN IS NULL";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		$filas = OCIFetchstatement($sentencia, $resultado);
			
			/**
			 * Si el cliente es empleado
			 */
			if ($filas > 0) {
				$respuesta -> assign("esEmpleado", "innerHTML", '<font color="#FFFFFF" size="-1">* Empleado de Take a rest</font>');
				$respuesta -> assign("esEmpleadoOculto", "innerHTML", '<input name="esEmpleado" type="hidden" value="true" />');
			}
				
			else {
				$respuesta -> assign("esEmpleado", "innerHTML", '');
				$respuesta -> assign("esEmpleadoOculto", "innerHTML", '<input name="esEmpleado" type="hidden" value="false" />');				
			}
		
		$reserv = '<font color="#FFFFFF">* Número - fecha - atendida por...</font>';
		
		$areaServicios = '<fieldset><legend><font color="#FFFFFF" size="+1">Servicios</font></legend>';
		$areaServicios .= '<textarea name="servicios" rows="4" cols="70" readonly="readonly">';		
		$totalServicios = 0;
		$servicios[0] = '0'; $s = 0;
		
		$areaProductos = '<fieldset><legend><font color="#FFFFFF" size="+1">Productos</font></legend>';
		$areaProductos .= '<textarea name="productos" rows="4" cols="70" readonly="readonly">';
		$totalProductos = 0;
		$productos[0] = '0'; $p = 0;
		
		$areaCombos = '<fieldset><legend><font color="#FFFFFF" size="+1">Combos</font></legend>';
		$areaCombos .= '<textarea name="combos" rows="4" cols="70" readonly="readonly">';
		$totalCombos = 0;
		$combos[0] = '0'; $c = 0;
		
		$areaHabitaciones = '<fieldset><legend><font color="#FFFFFF" size="+1">Habitaciones</font></legend>';
		$areaHabitaciones .= '<textarea name="habitaciones" rows="4" cols="70" readonly="readonly">';
		$totalHabitaciones = 0;
		$habitaciones[0] = '0'; $h = 0;
		
		$subtotal = 0;
		
		/**
		 * Cargando los servicios, productos, combos y habitaciones
		 */
		$query = "SELECT s.NOMBRE_SERVICIO SERVICIO, d.CANTIDAD_SERVICIOS, s.COSTO_SERVICIO*d.CANTIDAD_SERVICIOS COSTO_SERVICIOS,
						 p.NOMBRE PRODUCTO, d.CANTIDAD_PRODUCTOS, p.COSTO_UNITARIO*d.CANTIDAD_PRODUCTOS COSTO_PRODUCTOS,
       					 com.NOMBRE COMBO, d.CANTIDAD_COMBOS, com.PK_ID_COMBO, (SELECT SUM(p.COSTO_UNITARIO*d.CANTIDAD_COMBOS)
				  																FROM PRO_COM pc, PRODUCTO p
				  																WHERE com.PK_ID_COMBO = pc.PK_FK_ID_COMBO
				  																AND pc.PK_FK_ID_PRODUCTO = p.PK_ID_PRODUCTO
																				GROUP BY pc.PK_FK_ID_COMBO) COSTO_COMBOS,
						 h.PK_NRO_HAB HABITACION, d.CANTIDAD_HABITACIONES, h.COSTO_HAB*d.CANTIDAD_HABITACIONES COSTO_HABITACIONES
				  FROM DETALLE_FACTURA d, SERVICIO s, PRODUCTO p, COMBO com, HABITACION h
				  WHERE d.PK_FK_NUMERO_FACTURA = $numeroFactura
				  AND d.FK_ID_SERVICIO = s.PK_ID_SERVICIO (+)
                  AND d.FK_ID_PRODUCTO = p.PK_ID_PRODUCTO (+)
				  AND d.FK_ID_COMBO = com.PK_ID_COMBO (+)
				  AND d.FK_NRO_HAB = h.PK_NRO_HAB (+)
                  ORDER BY d.PK_ID_DETALLE_FACTURA";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		if ($rows > 0)
			for ($i = 0; $i < $rows; $i++) {
				if (strlen($resultado['SERVICIO'][$i]) > 0) {
					$totalServicios += str_replace(',', '.', $resultado['COSTO_SERVICIOS'][$i]);
					$subtotal += str_replace(',', '.', $resultado['COSTO_SERVICIOS'][$i]);
					
					$areaServicios .= inicializarAreaServicios($resultado['SERVICIO'][$i], $resultado['CANTIDAD_SERVICIOS'][$i],
														   str_replace(',', '.', $resultado['COSTO_SERVICIOS'][$i]));	
					$servicios[$s++] = $resultado['SERVICIO'][$i];
				}
				
				if (strlen($resultado['PRODUCTO'][$i]) > 0) {
					$totalProductos += str_replace(',', '.', $resultado['COSTO_PRODUCTOS'][$i]);
					$subtotal += str_replace(',', '.', $resultado['COSTO_PRODUCTOS'][$i]);
					
					$areaProductos .= inicializarAreaProductos($resultado['PRODUCTO'][$i], $resultado['CANTIDAD_PRODUCTOS'][$i],
														   	   str_replace(',', '.', $resultado['COSTO_PRODUCTOS'][$i]));
					$productos[$p++] = $resultado['PRODUCTO'][$i];
				}
				
				if (strlen($resultado['COMBO'][$i]) > 0) {
					$totalCombos += str_replace(',', '.', $resultado['COSTO_COMBOS'][$i]);
					$subtotal += str_replace(',', '.', $resultado['COSTO_COMBOS'][$i]);
					
					$areaCombos .= inicializarAreaCombos($resultado['COMBO'][$i], $resultado['CANTIDAD_COMBOS'][$i],
													 	 str_replace(',', '.', $resultado['COSTO_COMBOS'][$i]));
					$combos[$c++] = $resultado['COMBO'][$i];
				}
				
				if (strlen($resultado['HABITACION'][$i]) > 0) {
					$totalHabitaciones += str_replace(',', '.', $resultado['COSTO_HABITACIONES'][$i]);
					$subtotal += str_replace(',', '.', $resultado['COSTO_HABITACIONES'][$i]);
					
					$areaHabitaciones .= inicializarAreaHabitaciones($resultado['HABITACION'][$i],
																     $resultado['CANTIDAD_HABITACIONES'][$i],
													 	 			 str_replace(',', '.', $resultado['COSTO_HABITACIONES'][$i]));
					$habitaciones[$h++] = $resultado['HABITACION'][$i];
				}
			}
			
		$totalServicios = '<input name="totalServicios" type="text" value="' . $totalServicios . '" size="36" readonly="readonly" />';
		$totalServicios .= ' <font color="#FFFFFF" size="+1"> $US</font>';
		
		$totalProductos = '<input name="totalProductos" type="text" value="' . $totalProductos . '" size="36" readonly="readonly" />';
		$totalProductos .= ' <font color="#FFFFFF" size="+1"> $US</font>';
		
		$totalCombos = '<input name="totalCombos" type="text" value="' . $totalCombos . '" size="36" readonly="readonly" />';
		$totalCombos .= ' <font color="#FFFFFF" size="+1"> $US</font>';
		
		$totalHabitaciones = '<input name="totalHabitaciones" type="text" value="' . 
							 $totalHabitaciones . '" size="36" readonly="readonly" />';
		$totalHabitaciones .= ' <font color="#FFFFFF" size="+1"> $US</font>';
			
		$areaServicios .= '</textarea></fieldset>';
		$areaProductos .= '</textarea></fieldset>';
		$areaCombos .= '</textarea></fieldset>';
		$areaHabitaciones .= '</textarea></fieldset>';
		
		$selectServicio = cargarServiciosDisponibles($rif, $servicios);
		$selectProducto = cargarProductosDisponibles($rif, $productos);
		$selectCombo = cargarCombosDisponibles($rif, $combos);
		$selectHabitacion = cargarHabitacionesOcupadasDisponibles($rif, $cedula, $habitaciones);
		
		$iva = $subtotal * $tasaImpuestos / 100;		
		$total = $subtotal + $iva;
		
		$tasaImpuestos = '<font color="#FFFFFF">' . $tasaImpuestos . ' %</font>';
		
		$subtotal = '<input name="totalFactura" type="text" value="' . $subtotal . '" size="36" readonly="readonly" />';
		$subtotal .= ' <font color="#FFFFFF" size="+1"> $US</font>';
		
		$iva = '<input name="iva" type="text" value="' . $iva . '" size="36" readonly="readonly" />';
		$iva .= ' <font color="#FFFFFF" size="+1"> $US</font>';
		
		$total = '<input name="total" type="text" value="' . $total . '" size="36" readonly="readonly" />';
		$total .= ' <font color="#FFFFFF" size="+1"> $US</font>';
		
		$respuesta -> assign("reserv", "innerHTML", $reserv);
		
		$respuesta -> assign("fechaEmision", "innerHTML", $fechaEmision);
		$respuesta -> assign("fechaEmisionOculta", "innerHTML", $fechaEmisionOculta);
		$respuesta -> assign("tasaImpuestos", "innerHTML", $tasaImpuestos);
		$respuesta -> assign("tasaImpuestosOculta", "innerHTML", $tasaImpuestosOculta);
		$respuesta -> assign("ciCliente", "innerHTML", $ci);
		$respuesta -> assign("ciOculta", "innerHTML", $ciOculta);
		$respuesta -> assign("selectReservacion", "innerHTML", $selectReservacion);
		
		$respuesta -> assign("selectServicio", "innerHTML", $selectServicio);
		$respuesta -> assign("areaServicios", "innerHTML", $areaServicios);
		$respuesta -> assign("totalServicios", "innerHTML", $totalServicios);
		
		$respuesta -> assign("selectProducto", "innerHTML", $selectProducto);
		$respuesta -> assign("areaProductos", "innerHTML", $areaProductos);
		$respuesta -> assign("totalProductos", "innerHTML", $totalProductos);
		
		$respuesta -> assign("selectCombo", "innerHTML", $selectCombo);
		$respuesta -> assign("areaCombos", "innerHTML", $areaCombos);
		$respuesta -> assign("totalCombos", "innerHTML", $totalCombos);
		
		$respuesta -> assign("selectHabitacion", "innerHTML", $selectHabitacion);
		$respuesta -> assign("areaHabitaciones", "innerHTML", $areaHabitaciones);
		$respuesta -> assign("totalHabitaciones", "innerHTML", $totalHabitaciones);
		
		$respuesta -> assign("totalFactura", "innerHTML", $subtotal);
		$respuesta -> assign("iva", "innerHTML", $iva);
		$respuesta -> assign("total", "innerHTML", $total);
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("cargarInformacionFactura");
	
	$xajax -> processRequest();
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!--
Design by Free CSS Templates
http://www.freecsstemplates.org
Released for free under a Creative Commons Attribution 2.5 License

Name       : Beach Sunset
Description: A two-column, fixed-width design for 1024x768 screen resolutions.
Version    : 1.0
Released   : 20090416

-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Modificar factura</title>
<?php
	$xajax -> printJavascript("xajax/");
?>
<script>
	function enviarRif(destino, rif) {
		location.href = destino + '?rif=' + rif;
	}
	
	function enviarNumeroFactura(destino, numeroFactura) {
		location.href = destino + '?numeroFactura=' + numeroFactura;
	}
	
	function enviarNumeroFacturaRif(destino, numeroFactura, rif) {
		location.href = destino + '?numeroFactura=' + numeroFactura + '&rif=' + rif;
	}

	function borrar_registro_servicios() {
		document.factura.idServicio.options[document.factura.idServicio.selectedIndex] = null;
	}
	
	function borrar_registro_productos() {
		document.factura.idProducto.options[document.factura.idProducto.selectedIndex] = null;
	}
	
	function borrar_registro_combos() {
		document.factura.idCombo.options[document.factura.idCombo.selectedIndex] = null;
	}
	
	function borrar_registro_habitaciones() {
		document.factura.idHabitacion.options[document.factura.idHabitacion.selectedIndex] = null;
	}
	
	function borrar_registro_reservaciones() {
		document.factura.idReservacion.options[document.factura.idReservacion.selectedIndex] = null;	
	}
	
	function redondearNumero(numero, decimales) {
		valor = Math.round(numero * Math.pow(10, decimales)) / Math.pow(10, decimales);
		return valor;
	}
	
	function modificarFactura(numeroFactura) {
		if ((document.factura.servicios.value == '') && (document.factura.productos.value == '') && 
		   (document.factura.combos.value == '') && (document.factura.habitaciones.value == ''))
			alert('¡La factura debe contener al menos un servicio, un producto, un combo o una habitación!');
				
		else		
			xajax_modificar_factura(xajax.getFormValues('factura'), numeroFactura);
	}
</script>
<meta name="keywords" content="" />
<meta name="description" content="" />
<link href="style.css" rel="stylesheet" type="text/css" media="screen" />
<style type="text/css">
<!--
.Estilo2 {font-size: 12px; color: #FF6600; }
.Estilo3 {font-size: 12px; color: #FF9900; }
.Estilo4 {color: #FF6600}
.Estilo5 {font-size: 24px}
.Estilo7 {color: #FFFFFF}
.Estilo8 {font-size: 12px; color: #FFFFFF; }
.Estilo9 {font-size: 60px}
.Estilo10 {color: #F0F0F0}
-->
</style>

</head>
<body>

<div id="wrapper">

		<div id="header">	
 <br />
		<div id="menu">				      
				<li  class="active"><a href="HOME.php" title="HOME">HOME</a></li>
				<li><a href="INSERTAR.php" title="INSERTAR">INSERTAR</a></li>
				<li><a href="ELIMINAR.php" title="ELIMINAR">ELIMINAR</a></li>
				<li><a href="CONSULTAR.php" title="CONSULTAR">CONSULTAR</a></li>
				<li><a href="MODIFICAR.php" title="MODIFICAR">MODIFICAR</a></li>
                <li><a href="MOSTRAR.php" title="MOSTRAR">MOSTRAR</a></li>
	  	</div>  <!-- end #menu -->	
  </div>    <!-- end #header -->	

		<div id="logo">
			<h1><a href="#"><span class="">Take a Rest</span> ... </a></h1>
		    <div align="left"></div>
		</div>
		<!-- end #logo -->	
        
</div> <!-- end *header- wrapper -->

<div id="page">

	<div id="sidebar">
		<ul>
			<li>
				<h2>Acciones</h2>
				<p class="Estilo2">Pulse sobre una acción para ejecutarla</p>
			</li>
            <li>
            	<font color="#FFFFFF">&raquo; <a href="javascript:enviarRif('InsertarFactura.php', <?php echo $rif ?>)" class="Estilo10">Emitir una nueva factura</a></font>
            </li>
            <li>
            	<font color="#FFFFFF">&raquo; <a href="javascript:enviarNumeroFacturaRif('ModificarFactura.php', <?php echo $numeroFactura ?>, <?php echo $rif ?>)" class="Estilo10">Modificar esta factura</a></font>
            </li>
            <li>
            	<font color="#FFFFFF">&raquo; <a href="javascript:enviarRif('ConsultarLocal.php', <?php echo $rif ?>)" class="Estilo10">Regresar al local</a></font>
            </li>
		</ul>
</div> <!-- end #sidebar -->

	<script>xajax_cargarInformacionFactura(<?php echo $numeroFactura ?>, <?php echo $rif ?>)</script>

<h2 align="center"><font color="#FFFFFF" size="+2">Modificar factura </font><font color="#CC3300" size="+1"><?php echo $numeroFactura ?></font><br /><font color="#FFFFFF" size="+2">emitida en </font><font color="#CC3300" size="+1"><?php echo buscarNombreLocal($rif) ?></font></h2><br /><br />
  
  <div align="center">
  <form name="factura" id="factura">
<table width="538" border="0" cellpadding="5" cellspacing="5">
	<tr>
    	<td align="center" colspan="2"><font color="#FF0000" size="2" face="Arial, Helvetica, sans-serif">
        <div class="Estilo2"><span class=\"textfieldRequiredMsg\">LOS EMPLEADOS DE TAKE A REST CUENTAN CON UN<br />15% DE DESCUENTO EN LOS SERVICIOS Y UN<br />10% DE DESCUENTO EN LOS PRODUCTOS</span></div></font><br /><br /></td>
    </tr>
  <tr>
    <td width="252" align="right"><font color="#FFFFFF" size="+1">Fecha de emisión</font></td>
    <td width="251" align="left"><div id="fechaEmision"></div></td>
    <td><div id="fechaEmisionOculta"></div></td>
  </tr>
  <tr>
    <td align="right"><font color="#FFFFFF" size="+1">Tasa de impuestos (IVA)</font></td>
    <td align="left"><div id="tasaImpuestos"></div></td>
    <td><div id="tasaImpuestosOculta"></div></td>
  </tr>
  <tr>
    <td width="252" align="right"><font color="#FFFFFF" size="+1">CI Cliente</font></td>
    <td width="251" align="left"><div id="ciCliente"></div></td>
    <td><div id="ciOculta"></div></td>
  </tr>
  <tr>
    <td width="252" align="right"><div id="esEmpleadoOculto"></div></td>
    <td width="251" align="left"><div id="esEmpleado"></div></td>
  </tr>
  <tr>
    <td width="252" align="right"><div id="etiquetaServicios"><font color="#FFFFFF" size="+1">Servicios</font></div></td>
    <td width="251" align="left"><div id="selectServicio"></div></td>
  </tr>
  <tr>
  		<td width="252" align="right"><div id="etiquetaCantidadServicio"><font color="#FFFFFF" size="+1">Cantidad</font></div></td>
    	<td width="251" align="left"><div id="cantidadServicio"><input name="cantidadServicio" type="text" maxlength="4" 
        onblur="xajax_validarCantidadServicio(document.factura.idServicio.options[document.factura.idServicio.selectedIndex].value,
        	   document.factura.cantidadServicio.value)" /></div></td>
  </tr>
  <tr>
  	<td></td>
    <td><div id="errorCantidadServicio"></div></td>
    <td width="54"><div id="errorCS"><input name="errorCantidadServicio" type="hidden" value="true" /></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="agregarServicios"><input name="agregar" type="button" value="Agregar servicio" 
    onclick="servicio = document.factura.idServicio.options[document.factura.idServicio.selectedIndex].value;
 			 cantidad = document.factura.cantidadServicio.value;
 
 			 if ((servicio != 'Seleccione') && (document.factura.errorCantidadServicio.value == 'false')) {
             	xajax_llenar_area_servicios(servicio, parseInt(cantidad), document.factura.servicios.value,
                document.factura.totalFactura.value, document.factura.totalServicios.value,
                document.factura.tasaImpuestos.value, document.factura.esEmpleado.value);
                borrar_registro_servicios();
 			 }" /></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="areaServicios">
		<fieldset>
        	<legend><font color="#FFFFFF" size="+1">Servicios</font></legend>
        	<textarea name="servicios" rows="4" cols="70" readonly="readonly"></textarea>
        </fieldset></div>
    </td>    
  </tr>
  <tr>
  	<td align="right"><font color="#FFFFFF" size="+1">Total servicios</font></td>
    <td align="left"><div id="totalServicios"><input name="totalServicios" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="borrarServicios"><input name="borrarServicios" type="button" value="Borrar servicios" onclick="xajax_borrar_area_servicios(document.factura.totalFactura.value, document.factura.totalServicios.value, document.factura.tasaImpuestos.value, <?php echo $rif ?>, document.factura.ciOculta.value)" /></div><br /><br /></td>
  </tr>
  <tr>
    <td width="252" align="right"><div id="etiquetaProductos"><font color="#FFFFFF" size="+1">Productos</font></div></td>
    <td width="251" align="left"><div id="selectProducto"></div></td>
  </tr>
  <tr>
  		<td width="252" align="right"><div id="etiquetaCantidadProducto"><font color="#FFFFFF" size="+1">Cantidad</font></div></td>
    	<td width="251" align="left"><div id="cantidadProducto"><input name="cantidadProducto" type="text" maxlength="4" 
        onblur="xajax_validarCantidadProducto(<?php echo $rif ?>,
        		document.factura.idProducto.options[document.factura.idProducto.selectedIndex].value,
         		document.factura.cantidadProducto.value)" /></div></td>
  </tr>
  <tr>
  	<td></td>
    <td><div id="errorCantidadProducto"></div></td>
    <td width="54"><div id="errorCP"><input name="errorCantidadProducto" type="hidden" value="true" /></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="agregarProductos"><input name="agregar" type="button" value="Agregar producto" 
    onclick="producto = document.factura.idProducto.options[document.factura.idProducto.selectedIndex].value;
    		 cantidad = document.factura.cantidadProducto.value;
             
             if ((producto != 'Seleccione') && (document.factura.errorCantidadProducto.value == 'false')) {
             	xajax_llenar_area_productos(<?php echo $rif ?>, producto, parseInt(cantidad),
                							document.factura.productos.value, document.factura.totalFactura.value,
                                            document.factura.totalProductos.value, document.factura.tasaImpuestos.value, document.factura.esEmpleado.value);
                borrar_registro_productos();
             }" /></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="areaProductos">
		<fieldset>
        	<legend><font color="#FFFFFF" size="+1">Productos</font></legend>
        	<textarea name="productos" rows="4" cols="70" readonly="readonly"></textarea>
        </fieldset></div>
    </td>    
  </tr>
  <tr>
  	<td align="right"><font color="#FFFFFF" size="+1">Total productos</font></td>
    <td align="left"><div id="totalProductos"><input name="totalProductos" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="borrarProductos"><input name="borrarProductos" type="button" value="Borrar productos" onclick="xajax_borrar_area_productos(document.factura.productos.value, document.factura.totalFactura.value, document.factura.totalProductos.value, document.factura.tasaImpuestos.value, <?php echo $rif ?>)" /></div><br /><br /></td>
  </tr>
  <tr>
    <td width="252" align="right"><div id="etiquetaCombos"><font color="#FFFFFF" size="+1">Combos</font></div></td>
    <td width="251" align="left"><div id="selectCombo"></div></td>
  </tr>
  <tr>
  		<td width="252" align="right"><div id="etiquetaCantidadCombo"><font color="#FFFFFF" size="+1">Cantidad</font></div></td>
    	<td width="251" align="left"><div id="cantidadCombo"><input name="cantidadCombo" type="text" maxlength="4" 
        onblur="xajax_validarCantidadCombo(<?php echo $rif ?>,
        document.factura.idCombo.options[document.factura.idCombo.selectedIndex].value,
        document.factura.cantidadCombo.value)" /></div></td>
  </tr>
  <tr>
  	<td></td>
    <td><div id="errorCantidadCombo"></div></td>
    <td width="54"><div id="errorCaC"><input name="errorCantidadCombo" type="hidden" value="true" /></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="agregarCombos"><input name="agregar" type="button" value="Agregar combo" 
    onclick="combo = document.factura.idCombo.options[document.factura.idCombo.selectedIndex].value;
    		 cantidad = document.factura.cantidadCombo.value;
             
             if ((combo != 'Seleccione') && (document.factura.errorCantidadCombo.value == 'false')) {
             	xajax_llenar_area_combos(<?php echo $rif ?>, combo, parseInt(cantidad), document.factura.combos.value,
                			             document.factura.totalFactura.value, document.factura.totalCombos.value,
                                         document.factura.tasaImpuestos.value);
                borrar_registro_combos();
             }" /></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="areaCombos">
		<fieldset>
        	<legend><font color="#FFFFFF" size="+1">Combos</font></legend>
        	<textarea name="combos" rows="4" cols="70" readonly="readonly"></textarea>
        </fieldset></div>
    </td>    
  </tr>
  <tr>
  	<td align="right"><font color="#FFFFFF" size="+1">Total combos</font></td>
    <td align="left"><div id="totalCombos"><input name="totalCombos" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="borrarCombos"><input name="borrarCombos" type="button" value="Borrar combos" 
    onclick="xajax_borrar_area_combos(document.factura.combos.value, document.factura.totalFactura.value,
    		 document.factura.totalCombos.value, document.factura.tasaImpuestos.value, <?php echo $rif ?>)" /></div><br /><br /></td>
  </tr>
  
  <tr>
    <td width="252" align="right"><div id="etiquetaHabitaciones"><font color="#FFFFFF" size="+1">Habitaciones</font></div></td>
    <td width="251" align="left"><div id="selectHabitacion"><select name="idHabitacion"><option value="Seleccione">Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option></select></div></td>
  </tr>
  <tr>
  		<td width="252" align="right"><div id="etiquetaCantidadHabitacion"><font color="#FFFFFF" size="+1">Noches</font></div></td>
    	<td width="251" align="left"><div id="cantidadHabitacion"><input name="cantidadHabitacion" type="text" maxlength="4" 
        onblur="xajax_validarCantidadHabitacion(document.factura.idHabitacion.options
        												[document.factura.idHabitacion.selectedIndex].value,
        												document.factura.cantidadHabitacion.value)" /></div></td>
  </tr>
  <tr>
  	<td></td>
    <td><div id="errorCantidadHabitacion"></div></td>
    <td width="54"><div id="errorCH"><input name="errorCantidadHabitacion" type="hidden" value="true" /></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="agregarHabitaciones"><input name="agregar" type="button" value="Agregar habitación" 
    onclick="habitacion = document.factura.idHabitacion.options[document.factura.idHabitacion.selectedIndex].value;
    		 cantidad = document.factura.cantidadHabitacion.value;
             
             if ((habitacion != 'Seleccione') && (document.factura.errorCantidadHabitacion.value == 'false')) {
             	xajax_llenar_area_habitaciones(habitacion, parseInt(cantidad),
                							   document.factura.habitaciones.value, document.factura.totalFactura.value,
                						 	   document.factura.totalHabitaciones.value, document.factura.tasaImpuestos.value);
                borrar_registro_habitaciones();
             }" /></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="areaHabitaciones">
		<fieldset>
        	<legend><font color="#FFFFFF" size="+1">Habitaciones</font></legend>
        	<textarea name="habitaciones" rows="4" cols="70" readonly="readonly"></textarea>
        </fieldset></div>
    </td>    
  </tr>
  <tr>
  	<td align="right"><font color="#FFFFFF" size="+1">Total habitaciones</font></td>
    <td align="left"><div id="totalHabitaciones"><input name="totalHabitaciones" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="borrarHabitaciones"><input name="borrarHabitaciones" type="button" value="Borrar habitaciones" onclick="xajax_borrar_area_habitaciones(<?php echo $numeroFactura ?>, document.factura.totalFactura.value,
    												  document.factura.totalHabitaciones.value,
     												  document.factura.tasaImpuestos.value, <?php echo $rif ?>,
                                                      document.factura.ciOculta.value)" /></div><br /><br /></td>
  </tr>
  
  <tr>
  	<td align="right"><font color="#FFFFFF" size="+1">Subtotal</font></td>
    <td align="left"><div id="totalFactura"><input name="totalFactura" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font></div></td>
  </tr>
  <tr>
  	<td align="right"><font color="#FFFFFF" size="+1">IVA</font></td>
    <td align="left"><div id="iva"><input name="iva" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font></div></td>
  </tr>
  <tr>
  	<td align="right"><font color="#FFFFFF" size="+1">Total</font></td>
    <td align="left"><div id="total"><input name="total" type="text" value="0" size="36" readonly="readonly" />&nbsp;<font color="#FFFFFF" size="+1">$US</font></div></td>
  </tr>
  <tr><td></td><td></td></tr>
  <tr><td></td><td></td></tr>
  <tr><td></td><td></td></tr>
  <tr><td align="center" colspan="2"><div id="mensaje"></div></td></tr>
  <tr>
  	<td align="center" colspan="2"><div id="modificar"><input name="modificar" type="button" value="Modificar" onclick="modificarFactura(<?php echo $numeroFactura ?>)" /></div></td>
  </tr>
</table>
</form>
<br /><br />
</div>
<!-- end #page -->


<div id="footer">
	<p> Design by <a href="http://www.freecsstemplates.org/">Nubielis, Eduardo, Daniel </a></p>
</div>
<!-- end #footer -->

</body>
</html>
